Camp Fire by
Stela
On: 10 Jul 2016
<div class="cont">
<div class="fire">
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
<div class="circle"></div>
</div>
<div class="woods">
<div class="wood"></div>
<div class="wood"></div>
</div>
</div>
html,
body {
margin: 0;
padding: 0;
height: 100%;
width: 100%;
}
body {
-webkit-align-items: center;
-ms-align-items: center;
align-items: center;
display: -webkit-flex;
display: -moz-box;
display: flex;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
-webkit-justify-content: center;
-ms-justify-content: center;
justify-content: center;
background: linear-gradient(#101, #100, #101);
}
@keyframes flicker1 {
0% {
opacity: 1;
}
70% {
opacity: 0.5;
transform: scale(0.5);
top: 0;
}
100% {
opacity: 0;
top: 0;
transform: scale(0.2);
}
}
@keyframes flicker2 {
0% {
transform: scale(1);
}
50% {
transform: scale(1.2);
opacity: 1;
}
100% {
transform: scale(1);
}
}
@keyframes flicker3 {
0% {
transform: translateY(0);
}
50% {
transform: translateY(-30px);
}
100% {
opacity: 0.5;
}
}
@keyframes flicker4 {
0% {
opacity: 0.7;
}
50% {
opacity: 1;
}
55% {
opacity: 0;
}
60% {
opacity: 1;
}
100% {
opacity: 0.7;
}
}
.cont {
-webkit-align-items: center;
-ms-align-items: center;
align-items: center;
display: -webkit-flex;
display: -moz-box;
display: flex;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
-webkit-justify-content: flex-end;
-ms-justify-content: flex-end;
justify-content: flex-end;
height: 500px;
width: 400px;
}
.fire {
height: 300px;
width: 300px;
position: relative;
}
.circle {
border-radius: 50%;
opacity: 0.9;
position: absolute;
}
.circle:nth-child(3n) {
mix-blend-mode: screen;
opacity: 0.8;
}
.circle:nth-child(5n) {
opacity: 0.7;
}
.circle:nth-child(1) {
height: 25px;
width: 25px;
animation: flicker4 1.3s 0.3s ease-in infinite;
background: #F6A820;
top: 5x;
left: 100px;
}
.circle:nth-child(2) {
height: 40px;
width: 40px;
background: #FCEE33;
top: 50px;
left: 100px;
}
.circle:nth-child(3) {
height: 48px;
width: 48px;
animation: flicker3 2s ease-out infinite;
background: #FCEE33;
top: 82px;
left: 88px;
}
.circle:nth-child(4) {
height: 70px;
width: 70px;
background: #F6A820;
top: 170px;
left: 120px;
}
.circle:nth-child(5) {
height: 80px;
width: 80px;
animation: flicker1 2s ease-out infinite;
background: #FCEE33;
top: 190px;
left: 100px;
}
.circle:nth-child(6) {
height: 80px;
width: 80px;
animation: flicker2 2s ease infinite;
background: #F3120E;
top: 220px;
left: 90px;
}
.circle:nth-child(7) {
height: 75px;
width: 75px;
background: #FF6F29;
top: 210px;
left: 150px;
}
.circle:nth-child(8) {
height: 56px;
width: 56px;
animation: flicker1 2s 1s ease-out infinite;
background: #F6A820;
top: 200px;
left: 65px;
}
.circle:nth-child(9) {
height: 67px;
width: 67px;
background: #FF6F29;
top: 160px;
left: 70px;
}
.circle:nth-child(10) {
height: 50px;
width: 50px;
animation: flicker2 1.6s ease-out infinite;
background: #F3120E;
top: 140px;
left: 90px;
}
.circle:nth-child(11) {
height: 65px;
width: 65px;
background: #FCEE33;
top: 210px;
left: 40px;
}
.circle:nth-child(12) {
height: 35px;
width: 35px;
animation: flicker3 1.6s ease-out infinite;
background: #FCEE33;
top: 246px;
left: 65px;
}
.circle:nth-child(13) {
height: 35px;
width: 35px;
background: #F6A820;
top: 260px;
left: 155px;
}
.circle:nth-child(14) {
height: 45px;
width: 45px;
animation: flicker2 1.4s 0.2s ease-out infinite;
background: #F6A820;
top: 150px;
left: 160px;
}
.circle:nth-child(15) {
height: 55px;
width: 55px;
animation: flicker1 2s 0.8s ease-out infinite;
background: #FCEE33;
top: 180px;
left: 180px;
}
.circle:nth-child(16) {
height: 30px;
width: 30px;
background: #FCEE33;
top: 110px;
left: 180px;
}
.circle:nth-child(17) {
height: 30px;
width: 30px;
animation: flicker1 1.5s 0.5s ease-out infinite;
background: #FCEE33;
top: 110px;
left: 180px;
}
.circle:nth-child(18) {
height: 25px;
width: 25px;
background: #F3120E;
top: 90px;
left: 177px;
}
.circle:nth-child(19) {
height: 35px;
width: 35px;
background: #F6A820;
top: 100px;
left: 120px;
}
.circle:nth-child(20) {
height: 25px;
width: 25px;
animation: flicker4 1s ease-in infinite;
background: #F3120E;
top: 82px;
left: 137px;
}
.circle:nth-child(21) {
height: 20px;
width: 20px;
animation: flicker4 1.3s 0.3s ease-in infinite;
background: #FF6F29;
top: 32px;
left: 130px;
}
.circle:nth-child(22) {
height: 28px;
width: 28px;
animation: flicker4 1.3s 0.3s ease-in infinite;
background: #FF6F29;
top: 132px;
left: 50px;
}
.circle:nth-child(23) {
height: 16px;
width: 16px;
animation: flicker2 1s ease-out infinite;
background: #FCEE33;
top: 42px;
left: 200px;
}
.circle:nth-child(24) {
height: 68px;
width: 68px;
animation: flicker3 2s 0.3s ease-out infinite;
background: #FCEE33;
top: 200px;
left: 190px;
}
.circle:nth-child(25) {
height: 55px;
width: 55px;
background: #FF6F29;
top: 120px;
left: 120px;
}
.wood {
border-radius: 10px;
height: 40px;
width: 200px;
background: black;
}
.wood:first-child {
transform-origin: top left;
transform: rotate(30deg);
}
.wood:nth-child(2) {
transform-origin: top right;
transform: rotate(-30deg) translateY(-45px);
}
14