html - `backdrop-filter: blur()` 在 MacOS 上使用 Google-Chrome 会导致不需要的伪影
问题描述
我和我的团队在使用Google Chrome时遇到了这种视觉故障。我已将视觉故障与其最简单的元素隔离开来。.html
通过使用以下代码创建一个新文件并在 chrome 中打开它来重新创建故障。
我当前的 Google Chrome 浏览器为( Version 78.0.3904.108 (Official Build) (64-bit)
)MacOS Mojave Version 10.14.6
Dec 02, 2019
<!doctype html>
<div
style="
position: fixed;
height: 100%;
width: 100%;
background-color: rgba(0,0,0,.3);
backdrop-filter: blur(5px);
"
>
</div>
您应该会看到一个大部分为“灰色”的rgba(0,0,0,.3)
页面,8px
其transparent
边距是从标签top
的left
默认 css 添加的。<body>
将鼠标悬停在 Google Chrome 上tabs bar
,您会注意到一条模糊线的视觉故障。
假设:由于此.html
文件的简约性质,我的团队认为它是来自 Chrome 浏览器的“工件”,通常0px
不可见。当将backdrop-filter
usingblur
应用于 时,将position: fixed
<div>
显示此不可见的工件,并给出height
来自blur
.
问题:如何让“故障伪影”不出现,并且仍然可以使用backdrop-filter
with blur()
?
解决方案
backdrop-filter
可能会导致许多错误,可能比您在此问题中确定的错误更多。使用它可能不值得,因为它仍然是实验性的,并且无论如何都没有完整的浏览器支持。
见:https ://caniuse.com/#feat=css-backdrop-filter
我的建议是做这样的事情,这并没有真正使用,backdrop-filter: blur()
但具有相同的效果。或使用该问题中的其他方法。从长远来看,它将backdrop-filter
完全避免这些问题。
目前没有针对您描述的问题的解决方法或修复程序。请参阅有关此相同 CSS 功能的类似问题的答案。
推荐阅读
- javascript - 节点 - 跨平台编译 - PKG
- python-3.x - 如何将 csv 文件的一列复制到另一个 csv 文件?
- html - bootstrap 3复杂形式的问题
- regex - sed/awk:替换子字符串中的空格
- git - 有没有办法知道提交日期是否被修改?
- javascript - 从功能组件设置标题标题的最佳方法?
- mongodb - 如何按嵌套数组中的最小值分组
- javascript - 虽然单击三个按钮之一不能禁用其他两个 jQuery
- angular - Azure B2C + Angular + ASP.NET Core 2.2 托管在 Azure 重新身份验证超时问题
- android - 使用 Azure DevOps 部署 Android 应用并针对不同环境编辑 APK