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 覆盖的内容都会应用滤镜,而不在乎被覆盖的内容有多少。如,覆盖两张图片的效果。

相关推荐
紫禁玄科6 小时前
Shai-Hulud:npm生态的自我复制蠕虫风暴
前端·npm·node.js
东风破_6 小时前
后端API没写好,前端难道干等着吗?
前端
用户938515635076 小时前
从前后端分离到前端接口工程:React + MockJS + Vite 解析
前端·后端·全栈
用户938515635076 小时前
从零在浏览器里跑 DeepSeek-R1:WebGPU + Transformers.js 全链路实战(三)
前端·react.js·typescript
excel6 小时前
当前端行情变差,我们为什么还要坚持?
前端
鸿是江边鸟,曾是心上人7 小时前
快速搭建HTTPS本地开发环境
前端
To_OC8 小时前
写了 5 个表单 Demo 后,我终于彻底搞懂了 React 受控与非受控组件
前端·react.js·前端框架
Sterting8 小时前
第9课 Vue Router 路由
前端·vue.js
用户059540174468 小时前
LangChain Memory 测试踩坑实录:用 pytest 自动化回归对话记忆,我折腾了整整一个周末
前端·css
kyriewen8 小时前
Claude Code后天起默认Auto模式了——我第一时间改了这6个设置
前端·ai编程·claude