CSS的滤镜实现火焰效果

这次给大家带来CSS的滤镜实现火焰效果,CSS滤镜实现火焰效果的注意事项有哪些,下面就是实战案例,一起来看一下。

上次我们了解了一些css滤镜的基础知识,CSS滤镜 filter属性

这次我们就来用css的滤镜实现一个 火焰的效果。

解释

CSS的滤镜实现火焰效果

要实现上面的火焰效果,我们先来了解一些必要的东西。

上次我们说过两个滤镜,blur 和 contrast。

blur 是给图像设置高斯模糊, contrast 是调整图像的对比度, 他们一起使用会产生融合的效果。

效果图

CSS的滤镜实现火焰效果

图中 红色背景 设置了 filter:contrast(20); 这点很重要,两个圆设置了 filter:blur(10px); 如果还不清楚,我们对比看看。

CSS的滤镜实现火焰效果

CSS的滤镜实现火焰效果

好的知道这些,我们开始实现火焰效果吧。

大致需要这 3 步:

1、先用边框画出三角形

要知道,如果 width是0,height也是0,只用边框的话,边框是三角形的,我们看看 width 和 height 都是0的,但边框宽度是100px的元素的样子

CSS的滤镜实现火焰效果

上图,4边的边框颜色是不一样的,我们很清楚的看见了4个三角形,我们现在需要下面这样一个东西,相信大家知道怎么实现了。

CSS的滤镜实现火焰效果

2、调整三角形的大小与颜色,实现类似火焰的样子

这一步很简单,我们只需要在上面已经实现的三角形上加这三行代码

border-radius: 45%;transform: scaleX(.4);filter: blur(20px) contrast(30);

效果图

CSS的滤镜实现火焰效果

3、让火焰动起来

这一步算是比较麻烦的了,不过也很好理解,就是利用上面提到的融合效果,让许多小圆随机的穿过这个三角形就可以了,看看下面这张图,就能理解原理。

CSS的滤镜实现火焰效果

好的,理解这些看代码绝对很容易了。

完成代码

            body {        background: #000;    }    .container {        position: relative;        width: 300px;        height: 300px;        margin: 0 auto;        background-color: #000;    }    .fire {        position: absolute;        bottom: 0;        left: 50%;        border-radius: 45%;        box-sizing: border-box;        border: 200px solid #000;        border-bottom: 200px solid #b5932f;        transform: translate(-50%, 0) scaleX(.4);        filter: blur(20px) contrast(30);    }        /* 小圆的样式 */    .dot {        position: absolute;        bottom: -110px;        left: 0;        width: 24px;        height: 24px;        background: #000;        border-radius: 50%;    }    @keyframes move {        100% {            transform: translateY(-350px);        }    }        

//创建一个元素,放所有的小圆 var circleBox = document.createElement('p'); //获取随机数 from 参数表示从哪个数开始 to参数表示到哪个数结束 from<= num <= to function randomNum(from, to) { from = Number(from); to = Number(to); var Range = to - from; var num = from + Math.round(Math.random() * Range); //四舍五入 return num; }; for (var i = 0; i < 40; i++) { //创建小圆 var circle = document.createElement('p'); // 下面的4个变量 代表小圆随机位置 和 随机持续时间和延迟 var bottom = randomNum(-300, -250); var left = randomNum(-200, 200); var duration = randomNum(10, 30) / 10; var delay = randomNum(0, 50) / 10; //给生成的每个小圆 加上动画和位置属性 circle.style.cssText += `animation:move ${duration}s linear ${delay}s infinite;bottom:${bottom}px;left:${left}px;`; circle.className += " dot"; //把每个小圆 都加入这个p circleBox.appendChild(circle); }; var fire = document.querySelector(".fire"); //把有40个随机小圆的 p 加入DOM树 fire.appendChild(circleBox);

相信看了本文案例你已经掌握了方法,更多精彩请关注创想鸟其它相关文章!

推荐阅读:

纯css实现照片墙3D效果

Css绘制扇形图案

CSS的loading动画效果使用教程

CSS3的rem(设置字体大小)使用教程

以上就是CSS的滤镜实现火焰效果的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1609323.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 00:42:06
下一篇 2025年12月24日 00:42:17

相关推荐

  • 纯css实现照片墙3D效果

    这次给大家带来纯css实现照片墙3D效果,纯css实现照片墙3D效果的注意事项有哪些,下面就是实战案例,一起来看一下。 直接上代码 1.准备材料: 准备材料就是没什么材料,自己麻溜赶快的去:百度找几张美女的照片来测试即可。 2.html代码: 照片墙 @@##@@ @@##@@ @@##@@ @@#…

    好文分享 2025年12月24日
    000
  • css中sticker-footer布局如何使用

    这次给大家带来css中sticker-footer布局如何使用,使用css中sticker-footer布局的注意事项有哪些,下面就是实战案例,一起来看一下。 在网页设计中,Sticky footers设计是最古老和最常见的效果之一,大多数人都曾经经历过。它可以概括如下:如果页面内容不够长的时候,页…

    好文分享 2025年12月24日
    000
  • CSS3的鼠标移入图片动态提示效果

    这次给大家带来CSS3的鼠标移入图片动态提示效果,实现CSS3鼠标移入图片动态提示效果的注意事项有哪些,下面就是实战案例,一起来看一下。 第一次尝试着写博客,不好或者有误的地方希望大家多多指正呐,今天主要写的是关于CSS3的一个重要属性transform的一些用法,这些例子是之前在慕课网上学习某位老…

    2025年12月24日 好文分享
    000
  • css3做出半圆弧线

    这次给大家带来css3做出半圆弧线,css3做出半圆弧线的注意事项有哪些,下面就是实战案例,一起来看一下。 本文介绍了css3实现画半圆弧线的示例代码,分享给大家,具体如下: css代码 .circle1 { width: 100px; height: 200px; border: 1px soli…

    2025年12月24日
    000
  • css3文字渐变动画

    这次给大家带来css3文字渐变动画,实现css3文字渐变动画的注意事项有哪些,下面就是实战案例,一起来看一下。 利用css3这个属性(背景剪裁): background-clip: border-box || padding-box || context-box || no-clip || text…

    2025年12月24日 好文分享
    000
  • CSS3做出条纹大背景

    这次给大家带来CSS3做出条纹大背景,使用CSS3做出条纹大背景的注意事项有哪些,下面就是实战案例,一起来看一下。 1. 实现不等宽背景条纹: .cont{width: 500px;height: 200px;background: linear-gradient(#78C9DB 70%,#0acf…

    2025年12月24日 好文分享
    000
  • css3的动画序列animation

    这次给大家带来css3的动画序列animation,使用css3动画序列animation的注意事项有哪些,下面就是实战案例,一起来看一下。 首先复习一下animation动画添加各种参数 (1)infinite参数,表示动画将无限循环。在速度曲线和播放次数之间还可以插入一个时间参数,用以设置动画延…

    2025年12月24日 好文分享
    000
  • 用css隐藏input的光标

    这次给大家带来用css隐藏input的光标,用css隐藏input的光标的注意事项有哪些,下面就是实战案例,一起来看一下。 前言 最近公司的ui突然跑过来问我一个问题:“如何在不影响操作的情况下,把input的光标隐藏了?”。 我相信很多人会跟我一样,觉得这是个什么狗屁需求,输入框不要光标这不是反人…

    2025年12月24日
    000
  • 纯css3代码实现多个元素依次显示

    这次给大家带来纯css3代码实现多个元素依次显示,纯css3代码实现多个元素依次显示的注意事项有哪些,下面就是实战案例,一起来看一下。 如上图所示,在许多的活动宣传html5中会经常需要用到这样的一个动画效果。特别是快到年底了,也许有同学正在为了公司的活动页面而忙碌,get到这样一个小技能说不定刚好…

    2025年12月24日
    000
  • css实现缩略图悬停界面

    这次给大家带来css实现缩略图悬停界面,css实现缩略图悬停界面的注意事项有哪些,下面就是实战案例,一起来看一下。 前言 前端本身很杂,想必在学前端的大家都懂,前端技能的各种学习心得,各种教程,只要你有一颗学习的心都可以搞定,关键在于你有没有需求分析的能力,解决问题的能力,这两个才是决定工资高低的本…

    2025年12月24日
    000
  • CSS里BFC的神奇之处。

    这次给大家带来CSS里BFC的神奇之处。,在CSS里使用BFC的注意事项有哪些,下面就是实战案例,一起来看一下。 在写样式时,往往是添加了一个样式,又或者是修改了某个属性,就达到了我们的预期。 而BFC就潜藏在其中,当你修改样式时,一不小心就能触发它而毫无察觉,因此没有意识到BFC的神奇之处。 一、…

    2025年12月24日 好文分享
    000
  • CSS用图换字多种方法

    这次给大家带来CSS用图换字多种方法,CSS用图换字的注意事项有哪些,下面就是实战案例,一起来看一下。 前面的话 CSS以图换字的技术,很久都没人提起了。它是一种在h1标签内,使用图像替换文本元素的技术,使页面在设计和可访问性之间达到平衡。本文将详细介绍CSS以图换字的9种方法 文字隐藏 在h1标签…

    好文分享 2025年12月24日
    000
  • CSS的三栏布局详解

    这次给大家带来CSS的三栏布局详解,CSS的三栏布局的注意事项有哪些,下面就是实战案例,一起来看一下。 本文介绍了CSS经典三栏布局方案,分享给大家,也给自己做个笔记,具体如下: 三栏布局,顾名思义就是两边固定,中间自适应。三栏布局在开发十分常见 1. float布局 最简单的三栏布局就是利用flo…

    2025年12月24日 好文分享
    000
  • css3的新单位使用详解

    这次给大家带来css3的新单位使用详解,css3新单位使用的注意事项有哪些,下面就是实战案例,一起来看一下。 本文介绍了css3新单位vw、vh、vmin、vmax的使用详解,分享给大家,具体如下: 1,vw、vh、vmin、vmax 的含义 (1)vw、vh、vmin、vmax 是一种视窗单位,也…

    2025年12月24日 好文分享
    000
  • css3的渐进增强和优雅降级

    这次给大家带来css3的渐进增强和优雅降级,css3渐进增强和优雅降级的注意事项有哪些,下面就是实战案例,一起来看一下。 渐进增强和优雅降级这两个概念是在 CSS3 出现之后火起来的。由于低级浏览器不支持 CSS3,但是 CSS3 特效太优秀不忍放弃,所以在高级浏览器中使用CSS3,而在低级浏览器只…

    好文分享 2025年12月24日
    000
  • css怎样做出六边形图片

    这次给大家带来css怎样做出六边形图片,css做出六边形图片的注意事项有哪些,下面就是实战案例,一起来看一下。 本文主要介绍了css实现六边形图片的示例代码,分享给大家,具体如下: 不说别的,先上效果:   用简单的p配合伪元素,即可‘画出’这幅六边形图片,原理是三个相同宽高的p,通过定位旋转拼合成…

    2025年12月24日 好文分享
    000
  • CSS做出图片背景填充的六边形

    这次给大家带来CSS做出图片背景填充的六边形,CSS做出图片背景填充的六边形的注意事项有哪些,下面就是实战案例,一起来看一下。 六边形的实现原理其实就是通过旋转三个重叠的矩形得到的,如下图所示: 这里为了得到一个正的六边形,两个矩形旋转的角度必须为-60deg和60deg,以及矩形高宽比必须是Mat…

    好文分享 2025年12月24日
    000
  • CSS3的calc() 方法怎么使用

    这次给大家带来CSS3的calc() 方法怎么使用,CSS3的calc()方法使用的注意事项有哪些,下面就是实战案例,一起来看一下。 下面一段代码给大家介绍css3中的calc()方法,具体内容如下所示: [Ctrl+A 全部选择 提示:您可先修改部分代码,再按运行] 如上代码,预览可以看出红色框超…

    好文分享 2025年12月24日
    000
  • 预处理器Sass如何使用

    这次给大家带来预处理器Sass如何使用,使用预处理器Sass的注意事项有哪些,下面就是实战案例,一起来看一下。 Sass 是一款强化 CSS 的辅助工具,它在 CSS 语法的基础上增加了变量 (variables)、嵌套 (nested rules)、混合 (mixins)、导入 (inline i…

    好文分享 2025年12月24日
    000
  • CSS 垂直水平居中有哪几种方法

    这次给大家带来CSS 垂直水平居中有哪几种方法,CSS 垂直水平居中的注意事项有哪些,下面就是实战案例,一起来看一下。 CSS 居中对齐 代码中均省略了浏览器前缀 以下例子以我的个人的标准排序 当然也有更多的居中处理方法 但我觉得只有这5种方法是最完善的解决方案 flex 居中 优点:可对未知高度进…

    好文分享 2025年12月24日
    000

发表回复

登录后才能评论
关注微信