热门关键字:
jquery > jquery教程 > jquery教程 > Safari 中z-index的层级问题

Safari 中z-index的层级问题

350
作者:管理员
发布时间:2020/9/29 9:25:56
评论数:0
转载请自觉注明原文:http://www.jq-school.com/Show.aspx?id=2651

在Safari浏览器下(此Safari浏览器包括iOS的Safari,iPhone上的微信浏览器,以及Mac OS X系统的Safari浏览器),当我们使用3D transform变换的时候,如果祖先元素没有overflow:hidden/scroll/auto等限制,则会直接忽略自身和其他元素的z-index层叠顺序设置,而直接使用真实世界的3D视角进行渲染。例如下面的场景,图中红框里面的模块,使用 3D transform变换,进行旋转动画,但是在Safari浏览器下,忽略了二维码遮罩层的z-index,结果使用了真实世界的3D视角进行渲染。出现了重叠的bug:

可以让你受益匪浅的10个css使用技巧,值得收藏


解决方法:

  1. 父级,任意父级,非body级别,设置overflow:hidden可恢复和其他浏览器一样的渲染。
  2. 以毒攻毒。有时候,页面复杂,我们不能给父级设置overflow:hidden,那么可以将被影响的元素设置一个足够大的translateZ值就可以,如translateZ(100px)。




如果您觉得本文的内容对您的学习有所帮助:支付鼓励



关键字:css
友荐云推荐