CSS3技巧36:backdrop-filter 背景滤镜

CSS3 有 filter 滤镜属性,能给内容,尤其是图片,添加各种滤镜效果。

filter 滤镜详见博文:CSS3中强大的filter(滤镜)属性_css3滤镜_stones4zd的博客-CSDN博客

后续,CSS3 又新增了 backdrop-filter 背景滤镜。

backdrop-filter 的属性值跟 filter 完全一样,只是应用效果的标签不同。

  • filter:作用于标签本身。
  • backdrop-filter:作用于被标签遮盖的内容。往往需要结合定位 position 属性实现遮盖效果。

以模糊效果为例。

有如下 HTML 解构:

html 复制代码
<div class="box">
        <div class="small  bf1">
            模糊
        </div>
        <img src="images/myimg.jpg" alt="">
</div>

CSS:让 small 绝对定位,覆盖图片。

css 复制代码
 .box{
            width: 600px;
            height: 399px;
            overflow: hidden;
            margin-left: auto;
            margin-right: auto;
            margin-top: 100px;
            position: relative;
}
.small{
            position: absolute;
            width: 300px;
            height: 200px;
            left:50%;
            top:50%;
            margin-left: -155px;
            margin-top: -105px;
            border:5px #fff solid;
}

添加backdrop-filter的模糊滤镜:

css 复制代码
.bf1{
    backdrop-filter: blur(10px);
}

效果如下。div.small 覆盖的图片部分就被模糊了。

需要说明的是,只要被 div.small 覆盖的内容都会应用滤镜,而不在乎被覆盖的内容有多少。如,覆盖两张图片的效果。

相关推荐
前端不太难3 小时前
从 Navigation State 反推架构腐化
前端·架构·react
前端程序猿之路4 小时前
Next.js 入门指南 - 从 Vue 角度的理解
前端·vue.js·语言模型·ai编程·入门·next.js·deepseek
大布布将军4 小时前
⚡️ 深入数据之海:SQL 基础与 ORM 的应用
前端·数据库·经验分享·sql·程序人生·面试·改行学it
川贝枇杷膏cbppg4 小时前
Redis 的 RDB 持久化
前端·redis·bootstrap
JIngJaneIL5 小时前
基于java+ vue农产投入线上管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
天外天-亮5 小时前
v-if、v-show、display: none、visibility: hidden区别
前端·javascript·html
jump_jump5 小时前
手写一个 Askama 模板压缩工具
前端·性能优化·rust
be or not to be5 小时前
HTML入门系列:从图片到表单,再到音视频的完整实践
前端·html·音视频
90后的晨仔6 小时前
在macOS上无缝整合:为Claude Code配置魔搭社区免费API完全指南
前端
沿着路走到底6 小时前
JS事件循环
java·前端·javascript