【发布时间】:2015-04-15 04:47:37
【问题描述】:
我想知道为什么webkit-backface-visibility 像万能的阿司匹林一样解决或使各种异质性问题变得更糟,主要与伪影和闪烁有关。
我已阅读并理解 backface-visibility 的真正用途:它控制 3D 旋转对象在不面对屏幕时是否可见。有一个很好的简单演示 here
但我很好奇为什么每次我在 CSS 世界中遇到奇怪的故障时,与 3D 旋转及其隐藏的背面完全无关,将backface-visibility 应用于有问题的层或其祖先之一通常会帮助或使事情变得更糟,但很少什么都不做。我说的是
- 动画闪烁
- 修复了层 Z-Index 问题
- 显示:无 可见闪烁和伪影
- 滚动闪烁
有趣的是,在我的卑微经验中,backface-visibility:hidden 倾向于解决与固定定位相关的问题,而backface-visibility:visible 是“最好的”闪烁。同样有趣的是,在 Chrome 和 Safari 中,副作用是不同的,但天哪!
我在 Visual HTML 创建器中工作,所以我有闪烁/伪影的情况相当复杂(即,多层动画、固定元素后面的滚动 div、绝对固定的 z-index ... .)
谁能给我指点一下?
【问题讨论】:
-
groups.google.com/a/chromium.org/forum/#!topic/blink-dev/… 我在 google 群组上找到了这篇文章,Chrome 图形工程师 Nat Duca 说背面可见性有一些实现上的怪癖,如果这对你来说仍然很有趣的话。