标签:blur 链接 opacity d3d div -o height after span
html:
<div class="candle" onclick="this.classList.toggle(‘out‘);"> <div class="candle-body"></div> <!--火焰--> <div class="candle-flame"></div> <!--烟雾--> <div class="candle-smoke"> <span class="s0"></span> <span class="s1"></span> <span class="s2"></span> <span class="s3"></span> <span class="s4"></span> <span class="s5"></span> <span class="s6"></span> <span class="s7"></span> <span class="s8"></span> <span class="s9"></span> </div> </div>
css:
.candle { position: absolute; bottom: 40px; left: 0; right: 0; width: 40px; margin: auto; } .candle-body { width: 40px; height: 120px; background-color: #E90018; border-radius: 0 0 40px 40px/0 0 16px 16px; box-shadow: inset 8px 0 12px rgba(0,0,0,.1), inset -8px 0 12px rgba(0,0,0,.1); position: relative; } /* 蜡烛芯 */ .candle-body::after { content: ‘‘; display: block; width: 4px; height: 20px; position: absolute; left: 0; right: 0; top: -20px; margin: auto; background: #fff; background-image: linear-gradient(to bottom,#311,#edd3d1 70%,#edd3d1); border-radius: 0 0 4px 4px/0 0 2px 2px; box-shadow: 0 1px 1px rgba(0,0,0,.25); } /* 火焰 */ .candle-flame { animation: flicker 3s infinite ease-out alternate; background-image: radial-gradient(ellipse at 5px 20px, rgba(75,95,124,0), hsla(0,0%,100%,.5), #fff); border-radius: 37% 37% 34% 34%/70% 70% 33% 33%; box-shadow: 0 -8px 8px 4px #fff, 0 -15px 15px 12px #ff0, 0 -15px 0 14px #f00; width: 10px; height: 20px; position: absolute; bottom: 100%; left: 0; right: 0; top: -24px; margin: auto; transform-origin: center bottom; filter: blur(1px); } .out .candle-flame { display: none; } /*动画*/ @keyframes flicker { 0% { transform:scale(1); } 20% { transform:scale(1.1,0.9) rotate(3deg); } 50% { transform:scale(1,1.2); } 80% { transform:scale(0.9,1.1) rotate(-3deg); } 100% { transform:scale(1); } } .candle-smoke { position: absolute; left: 50%; top: -15px; transform-origin: bottom center; transform: scale(.5); filter: blur(3px); opacity: 0; } .out .candle-smoke { animation: smokeOut 30s both; } @keyframes smokeOut { 10% { opacity: 1; } 0%,100% { opacity: 0; } }
友情链接:http://www.zhangxinxu.com/study/201805/css3-fire-smoke.html
标签:blur 链接 opacity d3d div -o height after span
原文地址:https://www.cnblogs.com/Longhua-0/p/9164949.html