介绍
本文将为大家详细介绍”css动画会被js阻塞吗”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“css动画会被js阻塞吗”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容如下,一起去收获新知识吧。
css的动画部分是会被js阻塞的,不过变换的动画则不会受影响。
下面举一个margin-left移动的动画下,启动js阻塞动画的性能图表
& lt; style> .walkabout-old-school { 动画:才能,3 s slide-margin linear 无限; } , @keyframes slide-margin  { 得到才能{margin-left: 0;} 50%,才能{margin-left: 100%;} 用才能{margin-left: 0;} } & lt;/style> & lt; script> function 杀死(),{ var 才能;start =, + new 日期; while 才能;(+ new Date 作用;start & lt;, 2000) {} } & lt;/script>
上图在运行杀方法之后明显可以看到动画停滞了2 s后才继续。
由上图可以看到启用js的2 s内,渲染进程会等到杀死函数执行完成后才执行,再看下面这张图,可以看出保证金的变化会导致dom重新布的局,而布局会等杀死函数执行完成后才开始,就会导致
然后再看看使用了变换作为动画的元素
.walkabout-new-school { 动画:才能,3 s slide-transform linear 无限; } @keyframes slide-transform  { 得到才能{变换:translatex (0);} 50%,才能{变换:translatex (300 px);} 用才能{变换:translatex (0);} }
下图是运行对比图(蓝色为保证金,绿色为变换)
从上图看出使用了变换的完全不受杀方法的影响,再来看下调试的图表
这里可以看出保证金会频繁触发页面的重排,而变换是不会的,而js阻塞了页面重排,所以保证金的动画会卡住。
所以在平时使用动画时,多用变换可以让页面性能和效果达到最佳。
如果你能读到这里,小编希望你对“css动画会被js阻塞吗”这一关键问题有了从实践层面最深刻的体会,具体使用情况还需要大家自己动手实践使用过才能领会,如果想阅读更多相关内容的文章,欢迎关注行业资讯频道!