移动端 transform导致设置的z-index属性的层级关系失效

移动端开发时很多效果会用到css3来实现 设置的层级关系会用z-index来实现 在浏览器中看起来没问题 但是到移动端后发现设置的z-index属性失效 

具体原因请看这片博客 https://www.cnblogs.com/reaf/p/5788781.html

引用里面的话

transform 变换的时候会让 z-index “临时失效”,其实并非 z-index 失效了,只是 z-index 被用在不同的 stacking context 上,而非在默认的 context 上同等地比较层级了。所以 DOM 在 transform 的工程中,DOM 处于一个新的 stacking context 里,z-index 也是相对于这个 stacking context 的,所以表现出来的实际是 stacking context 的层次,动画一结束,DOM 又回到默认的 context 里,这时的 z-index 才是在同一个 context 上的比较。”

具体解决方案 可以通过translateZ()来实现z-index的效果 代码如下

移动端 transform导致设置的z-index属性的层级关系失效_第1张图片

z-index的大小通过translateZ来设置层级关系 即可解决问题 但是需要在父元素上添加

transform-style: preserve-3d;

文章引用如有侵权请告知 谢谢。

你可能感兴趣的:(移动端 transform导致设置的z-index属性的层级关系失效)