>本教程探讨了使用HTML,CSS和JavaScript制作平滑,性能和可维护的逐帧动画的各种方法。 我们将构建一个眨眼的眼动动画,逐步完善我们的方法,以在浏览器和设备之间取得最佳的结果。
密钥概念:
translate3d
>本教程使用SVG图像以实现其可扩展性。 稍后将讨论PNG,JPEG和GIF等替代方案。我们将使用jQuery并假设配置了AutoPrefixer。 方法:
更改图像源:这种简单的方法涉及动态更改>元素的
属性。pros:声明性,图像保留在适当的位置。src
>
<img alt="frax by frame动画教程,带有CSS和JavaScript" >
requestAnimationFrame
cons:
使用转换:移动精灵,这是通过使用transform: translateX
而不是background-position
来优化方法3的。 这可以最大程度地减少重新粉刷和倒流。 对于不支持动画中不支持百分比值的较旧的IE版本需要后备。 translateX
用于硬件加速度。transform: translate3d(0, 0, 0)
内联SVG:
性能测试(例如,使用jsperf)表明Sprite-Transform方法(方法4)通常提供最佳的渲染性能。
替代方案:> 如果可伸缩性并不关键,则
(由于未以易于使用的格式提供图像URL,因此未包含图像URL。用您的实际图像URL替换占位符。
以上是frax by frame动画教程,带有CSS和JavaScript的详细内容。更多信息请关注PHP中文网其他相关文章!