css实现磨砂效果(filter 与 backdrop-filter 的对比分析)

在 CSS 中实现磨砂效果(类似于 iOS 的磨砂玻璃效果)通常结合使用 backdrop-filter 属性和半透明的背景色。

html 复制代码
<div class="content">
  <img src="src\assets\404_images\xxmLogo.png" alt="">
  <div class="frosted-glass">
    <p>This is a frosted glass effect.</p>
  </div>
</div>
css 复制代码
.content {
  position: relative;
  width: 200px;
  height: 200px;
}

.frosted-glass {
  padding: 20px;
  background-color: rgba(0, 0, 0, 0.3);
  /* 半透明背景色 */
  backdrop-filter: blur(20px);
  /* 背景模糊效果 */
  -webkit-backdrop-filter: blur(10px);
  /* Safari 中的背景模糊效果 */
  text-align: center;
  left: 0;
  bottom: 0;
  position: absolute;
}
  • background-color: rgba(255, 255, 255, 0.3);:使用半透明的白色背景,让背景内容依然可见,同时为磨砂效果打基础。
  • backdrop-filter: blur(10px); 和 -webkit-backdrop-filter: blur(10px);:这是磨砂效果的核心。backdrop-filter对元素后面的背景应用模糊效果。-webkit-backdrop-filter 是为了兼容 Safari 浏览器。

效果图:

添加backdrop-filter:

未加backdrop-filter:

拓展

给img加上 filter:blur(5px); 会产生如下效果:

  • filter: 是一个CSS属性,用于为元素的图像本身(或任何其他可以应用滤镜的元素)应用视觉效果,比如模糊、锐化、颜色变化等。它直接影响到应用了该属性的元素本身。
  • backdrop-filter: 同样是一个CSS属性,但它的作用是为元素背后的区域(即元素的背板)应用滤镜效果。这意味着它可以为任何位于该元素下面的元素添加视觉效果,而不会改变元素本身的样式。

CSS 属性 filter 与 backdrop-filter 的对比分析

相关推荐
optimistic_chen1 分钟前
【Vue入门】组件及组件化
前端·javascript·vue.js·html·组件
知无不研2 分钟前
constexpr关键字
开发语言·c++·constexpr
北寻北爱2 分钟前
面试题-css篇
前端
计算机安禾2 分钟前
【C语言程序设计】第26篇:变量的作用域与生命周期
c语言·开发语言·数据结构·算法·leetcode·visual studio code·visual studio
2401_898075122 分钟前
C++中的智能指针详解
开发语言·c++·算法
花间相见4 分钟前
【JAVA基础09】—— 赋值与三元运算符:从基础到实操的避坑指南
java·开发语言·python
Hello_Embed7 分钟前
LVGL 入门(八):标签控件 lv_label
前端·笔记·stm32·单片机·嵌入式
格林威8 分钟前
工业相机图像高速存储(C#版):直接IO(Direct I/O)方法,附Basler相机实战代码!
开发语言·人工智能·数码相机·计算机视觉·c#·视觉检测·工业相机
大头流矢8 分钟前
STL中的string容器和迭代器iterator
开发语言·c++
IOT-Power8 分钟前
Qt+C++ 控制软件架构实例
开发语言·c++·qt