我只是建立了这个网站:http://rcmm.minnie.mico.dk/
在头版我有一个幻灯片(糟糕的用户体验 - 我知道)。如果单击右下角的一个小方块图标,滑块将显示动画。
这很好用,除了用于mac的chrome。每次滑块动画时,所有绝对定位的元素都会进行微小的像素跳转。然而,滑块上的动画使用transform:translate()来制作动画。 js只是交换类 - 没有实际的动画 - 这些都是由css处理的。
有谁知道这是为什么,如果有可能解决这个问题?
非常感谢任何帮助。
答案 0 :(得分:4)
只需将-webkit-backface-visibility: hidden;
添加到<body>
即可停止跳转。
任何时候使用CSS变换时都会遇到小问题,backface-visibility: hidden
会解决问题。它通常与浏览器处理硬件加速的方式有关。
来自CSS3 Animations: the Hiccups and Bugs You'll Want to Avoid:
这种现象背后的原因尚不清楚,但修复非常简单。只需添加-webkit-backface-visibility:hidden;规则到CSS应该有助于防止问题。将它应用于元素的容器,如下所示:
.container { -webkit-backface-visibility: hidden; }
归结为另一个硬件加速问题 - 使用此属性只需将加速度加速即可。你也可以使用-webkit-perspective:1000;或其他3D属性。