javascript - CSS3 关键帧动画是否比属性转换更流畅?

标签 javascript css mobile-safari css-transitions zepto

我有一个移动网络应用程序,它使用 Zepto 创建页面之间的转换。动画在桌面上非常流畅,但在我的 iPhone 4 上却很不稳定。动画比过渡更高效吗?除了控制粒度之外,动画和过渡之间还有什么区别?

最佳答案

这不是过渡与动画问题 - 这是转换与属性更改问题。

内容可以通过多种不同的方式在屏幕上移动:最常见的两种是位置属性(left、top、margin-left、scroll-position 等)更改和变换。在 iOS 上,现在是第 5 版,位置属性更改是在 CPU 上以像素增量完成的 - 没有子像素补间,因此移动,特别是在较旧的非视网膜显示器上,是不稳定的。

相比之下,变换 - 特别是 3D 变换是在 GPU 上完成的,因此您可以获得非常平滑的运动和子像素补间。

(请注意,某些桌面浏览器会进行 GPU 加速位置属性更改 - 如 IE9 - 因此这两种方法在视觉上没有区别)

关于javascript - CSS3 关键帧动画是否比属性转换更流畅?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10955389/

相关文章:

html - 如何将 html 表格分成两列,交替行背景颜色

javascript - 动态更改视频标签源时移动 Safari 崩溃

javascript - .NET 创建 JSON 对象,其中值包含引号

javascript - nodeValue、data、textContent、wholeText、innerHTML 不起作用

javascript - 调整 Canvas 和 webGL 纹理的大小

html - 在容器外扩展文本

javascript - 注入(inject) css 而无需从用户样式表转换

javascript - 正则表达式 - 连续使用 "+ "量词

javascript - iOS6 Safari JavaScript Ajax 轮询错误?

javascript - Mobile Safari - Javascript 打开选项卡而不会失去对当前页面的关注