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

相关推荐
问心无愧05133 分钟前
ctf show web入门110
前端·笔记
拉拉肥_King8 分钟前
Vue 3 主题切换深度解析:从炫酷动画到零闪烁方案
前端·vue.js
excel10 分钟前
为什么 Pinia + localForage 持久化后,页面初始化拿不到数据?
前端
雨雨雨雨雨别下啦13 分钟前
vant介绍
前端
小小小小宇13 分钟前
大模型失忆问题探讨
前端
wordbaby16 分钟前
rn-cross-calendar:一个兼容 React 18/19、RN/RNOH 的跨平台日历组件
前端·react native·harmonyos
weixin_5231853218 分钟前
Collections.unmodifiableMap详解:真的不可修改吗?
java·linux·前端
江米小枣tonylua19 分钟前
关掉 VSCode:在 NeoVim12 上配置 Claude Code
前端·程序员
2301_7736436229 分钟前
ceph镜像
前端·javascript·ceph
程序员黑豆1 小时前
AI全栈开发之Java:什么是JDK
前端·后端·ai编程