在CSS3动画中左击vs translateX

时间:2012-08-22 13:11:37

标签: html css google-chrome safari css-transitions

我创建了this fiddle;红色框使用CSS left属性设置动画,蓝色框使用CSS转换TranslateX属性设置动画。

在Chrome 21中,两种动画都具有相同的性能,两者都运行顺畅。

但是在Safari(适用于Windows)中,蓝色的动画很流畅,但红色的却很迟钝。 (似乎蓝色的是硬件加速的,而红色的则没有)

第一个问题是,最佳选择是什么?哪一个总体上更好? (更多浏览器支持等)

接下来,在Safari中的lefttop CSS属性上,硬件加速动画是否有办法? (因为我想将div实际移到窗口外,我认为使用left属性更好。)

1 个答案:

答案 0 :(得分:1)

Translate用于移动对象而不影响DOM中的位置。虽然它可以明显地移动到屏幕上的另一个地方,但DOM并不会受到影响。这就是翻译功能的表现通常更好的原因。

请注意,您不会在每个浏览器中看到相同的性能特征。

这是对不同translate/move函数的JSPerf概述。滚动到底部可查看每个浏览器的统计信息。

将来很可能会改变。