我知道iPhone曾经不支持位置:固定,但是现在它确实存在,当我在具有更高z-index的其他元素后面滚动固定位置元素时,我看到了一个奇怪的故障.具有较低z-index的固定位置元素暂时出现在前面,这看起来非常糟糕.有办法防止这种情况吗?
我尝试添加-webkit-transform: translate3d(0, 0, 0);
到固定元素,它似乎没有帮助这个问题.
这里也是一个jsfiddle.
transform:translateZ(x)
除了z-index之外
我添加的更新并没有解决问题.
Update2
我添加了-webkit
前缀,这可以解决移动Safari上的z-index问题,但也会导致位置:已修复在桌面Chrome中无法正常工作.
更新1:我
transform:translateZ(x)
除了添加了z-index
,而且没有解决问题。更新2:我添加了
-webkit-
前缀,这确实解决了移动Safari上的z-index问题,但也导致position:fixed
不能在台式机Chrome中正常工作。”
然后尝试包装-webkit-transform:translateZ(x)
移动专用媒体查询。
例如:
@media only screen and (min-device-width : ... ) and (max-device-width : ... ) { .whatever { -webkit-transform: translateZ(x) } }
因此,在这种情况下,它将无法在桌面版Chrome上执行任何操作
z-index不可靠,位置:固定,如此小提琴所示:http://jsfiddle.net/mZMkE/2/使用translateZ转换.
transform:translateZ(1px);
在您的页面元素上.
编辑:在您的代码中,添加此CSS:
.bla, .projects, .contact { -webkit-transform:translateZ(1px); -moz-transform:translateZ(1px); -o-transform:translateZ(1px); transform:translateZ(1px); }
然后从这些元素和.intro中删除z-index引用.