
文章插图
3.2 利用 margin 属性的负值扩大容器
模糊度的效果如下图 , 还是有差异 , 因为
filter
是从容器外边框向内聚合的一个滤镜 , 导致滤镜外边框有一个白圈 
文章插图
此时只需要扩大
::before
元素的容器大小 , 这里直接可使用 margin
属性负值扩大容器 .card-filter::before { ...+ margin: -20px;}此时的效果就有点“那个意思了” , 看来快可以交差了

文章插图
3.3 ::after 填补消失的背景色
原本设置在
.card-filter
类上的 background-color: rgba(255, 255, 255, 0.72);
没起作用! 因为
::before
伪类作用于 .card-filter
元素内 , 是其子元素 , 又因为 ::before
的 background
属性设置了背景图 , 遮盖了父元素 .card-filter
的背景色 。 知道了原因 , 那么我们就可以在
.card-filter
元素内再添加一个子元素(伪类) , 用于设置背景色! 
文章插图
再偷个懒 , 直接使用
::after
伪类 , 就不用改造 DOM 结构 。 .card-filter::after { content: ' '; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; background-color: rgba(255, 255, 255, 0.72);}此时 , 效果就和
backdrop-filter
的效果相同: 
文章插图
放到“自研”的 Webview 内核中也能看到效果了!
四、总结总的来说 , 如果能说服产品经理和 UI 小姐姐的话 , 咱就用
backdrop-filter
, 说服不了就用 filter
的组合拳模拟吧! 另外
backdrop-filter
属性是有性能问题的 , 咱就是说 , 都 2022 年了 , 求求大家升级一下手上的设备吧! , 兼容性真让前端工程师秃头儿! 
文章插图
如果“毛玻璃”和背景没有文中的相对移动 , 直接让 UI 小姐姐切个图 , 直接解决一切兼容性 & 性能问题!
在研究过程中 , 笔者还尝试过 SVG 的
feGaussianBlur
标签 , 效果和 filter
一样 , 会稍微复杂一些 , 不过也是个可施行的方案 , 大家可自行尝试下~ 原文地址:https://juejin.cn/post/7070325873202692104(学习视频分享:web前端)
以上就是聊聊使用CSS怎么实现毛玻璃特效(兼容方案探究)的详细内容 , 更多请关注电脑自学网其它相关文章!
【兼容方案探究 聊聊使用CSS怎么实现毛玻璃特效】
推荐阅读
- 地推扫码送礼品活动方案 yy礼物一组66是多少
- 中秋送礼方案大全 中秋送礼送什么礼品最好客户
- 5个月的孕妇送的生日礼物 圣诞礼品袋策划方案前言
- apple礼品包装 apple节日礼品方案
- 介绍写酒吧营销策划方案的6个步骤 酒吧营销策划方案该怎么写?
- 抖音抢礼物红包插件 发红包抢礼物方案
- 精装房软装设计解决方案课
- 精装房软装设计解决方案
- 社会公益活动策划方案范本
- U盘启动显示Initialize variable space... Starting cmain...报错解决方案欢迎阅读