千家信息网

CSS3动画和js动画的区别是什么

发表于:2024-10-05 作者:千家信息网编辑
千家信息网最后更新 2024年10月05日,小编给大家分享一下CSS3动画和js动画的区别是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!css实现动画:anim
千家信息网最后更新 2024年10月05日CSS3动画和js动画的区别是什么

小编给大家分享一下CSS3动画和js动画的区别是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

  css实现动画:animation transition transform

  js实现动画: setInterval setTimeout requestAnimationFrame

  css动画:

  优点:

  1.集中所有DOM,一次重绘重排,刷新频率和浏览器刷新频率相同。

  2.代码简单,方便调优

  3.不可见元素不参与重排,节约cpu

  4.可以使用硬件加速GPU(translateZ(0))

  缺点:

  1.对过程无法把控。无进度报告,无回调函数。

  2.代码冗长。

  JS动画:

  优点:

  1.效果炫酷。

  2.过程控制。

  缺点:

  1.无法保证执行时间。timeout interval存在同步任务优先执行的问题。

  2.最小粒度无法保证在16ms.

  requestAnimationFrame的优点在于:

  1.是浏览器针对动画提出的API。自动优化,页面不激活状态自动停止。

  2.集中所有dom,一次重绘就完成,重绘事件跟随浏览器刷新频率。

  3.隐藏或不可见元素,不进行重绘回流

以上是"CSS3动画和js动画的区别是什么"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0