带有粒子效果的熊熊大火 痛定思痛。 2022-06-12 08:55 126阅读 0赞 <!DOCTYPE html> <html lang="en"> <head> <title>熊熊大火燃烧的粒子效果</title> <meta charset="utf-8"> <script src="jquery-1.7.2.min.js"></script> <script src="Particleground.js"></script> <style> body{ height:100%; background:#16a085; overflow:hidden; width: 1920px; height: 972px; } canvas{ z-index:1; position:absolute; } #fire{ font-family: "Comic Sans MS"; font-size: 80px; top:25%; left:35%; color: white; z-index: 2; position: absolute; } </style> </head> <body> <h1 id="fire">燃烧的粒子效果</h1> <canvas class="pg-canvas" width="1920" height="972"></canvas> <script> $(document).ready(function() { $('body').particleground({ dotColor: '#5cbdaa', lineColor: '#5cbdaa' }); $('#fire').css('text-shadow','0 0 20px #fefcc9, 10px -10px 30px #feec85, -20px -20px 40px #ffae34, 20px -40px 50px #ec760c, -20px -60px 60px #cd4606, 0 -80px 70px #973716, 10px -90px 80px #451b0e'); setInterval(function(){ $('#fire').css('text-shadow','0 0 20px #fefcc9, 10px -10px 30px #feec85, -20px -'+ Math.random()*100 +'px 40px #ffae34, 20px -'+ Math.random()*150 +'px 50px #ec760c, -20px -'+ Math.random()*150 +'px 60px #cd4606, 0 -'+ Math.random()*100 +'px 70px #973716, 10px -'+ Math.random()*150 +'px 80px #451b0e'); },120); //可以控制时间和相应的随机数,调出适合的燃烧效果 }); </script> </body> </html> 效果截图: ![Center][] PS:这是动态的燃烧效果。github地址:[http://git.oschina.net/sensus/XiongXiongDaHuoZhengZaiRanShaoZhouLiZiXiaoGuo][http_git.oschina.net_sensus_XiongXiongDaHuoZhengZaiRanShaoZhouLiZiXiaoGuo] 知识拓展:本案例的核心包括动态的例子canvas和文字阴影text-shadow。[text-shadow][]还没有出现时,大家在网页设计中阴影一般都是用photoshop做成图片,现在有了css3可以直接使用[text-shadow][]属性来指定阴影。这个属性可以有两个作用,产生阴影和模糊主体。这样在不使用图片时能给文字增加质感。text-shadow曾经在css2中就出现过,但在css2.1版本中又被抛弃了,现在[css3.0][] 版本又重新捡回来了。这说明text-shadow这个属性非常值得我们做前端的人员重视 语法: text-shadow : none | <length> none | \[<shadow>, \] \* <shadow> 或none | <color> \[, <color> \]\* 也就是: text-shadow:\[颜色(Color) x轴(X Offset) y轴(Y Offset) 模糊半径(Blur)\],\[颜色(color) x轴(X Offset) y轴(Y Offset) 模糊半径(Blur)\]... 或者 text-shadow:\[x轴(X Offset) y轴(Y Offset) 模糊半径(Blur) 颜色(Color)\],\[x轴(X Offset) y轴(Y Offset) 模糊半径(Blur) 颜色(Color)\]... 取值: <length>:长度值,可以是负值。用来指定阴影的延伸距离。其中X Offset是水平偏移值,Y Offset是垂直偏移值 <color>:指定阴影颜色,也可以是rgba透明色 <shadow>:阴影的模糊值,不可以是负值,用来指定模糊效果的作用距离。 如下图所示: ![text-shadow.png][] 说明: 可以给一个对象应用一组或多组阴影效果,方式如前面的语法显示一样,用逗号隔开。text-shadow: X-Offset Y-Offset Blur Color中X-Offset表示阴影的水平偏移距离,其值为正值时阴影向右偏移,如果其值为负值时,阴影向左偏移;Y-Offset是指阴影的垂直偏移距离,如果其值是正值时,阴影向下偏移反之其值是负值时阴影向顶部偏移;Blur是指阴影的模糊程度,其值不能是负值,如果值越大,阴影越模糊,反之阴影越清晰,如果不需要阴影模糊可以将Blur值设置为0;Color是指阴影的颜色,其可以使用rgba色。 浏览器的兼容性: ![text-shadow-browers.png][] [Center]: /images/20220612/6180efd22984492190f5d2ff2ec08610.png [http_git.oschina.net_sensus_XiongXiongDaHuoZhengZaiRanShaoZhouLiZiXiaoGuo]: http://git.oschina.net/sensus/XiongXiongDaHuoZhengZaiRanShaoZhouLiZiXiaoGuo [text-shadow]: http://www.w3.org/Style/Examples/007/text-shadow.en.html#translations [css3.0]: http://www.w3.org/TR/css3-roadmap/ [text-shadow.png]: /images/20220612/be2cee35e0454eada6f150ac602f453f.png [text-shadow-browers.png]: /images/20220612/381bf7ee1f6a4979a4c54527e4585a06.png
还没有评论,来说两句吧...