Safari中3D变换的问题
z-index 失效
在 Safari 浏览器中,使用 3D 变换时,会导致该元素的 z-index 层级设置失效,解决办法有两种:
- 给变换元素的任意父元素添加
overflow: hidden
属性 - 通过
transform: translateZ()
来设置 Z 轴的距离
多个相邻的 3D 变换元素穿模
在通过 overflow: hidden
解决了 z-index
属性失效的问题后,又发现多个在一起的元素,会出现穿模现象。
在 A 与 B 重叠的区域,本该 A 覆盖 B 的情况,却出现了一部分是 A 覆盖 B, 另一部分却是 B 覆盖 A。
暂时未找到解决方式,通过属性 backface-visibility: hidden
能稍微缓解一些这种情况,但依然无法根除。
参考链接
- https://www.zhangxinxu.com/wordpress/2016/08/safari-3d-transform-z-index/
- https://zhuanlan.zhihu.com/p/33194664