摘要:一什么是回流回流是会导致页面重新渲染的一些元素,从而影响性能。
一、什么是回流?
回流是会导致页面重新渲染的一些元素,从而影响性能。
二、哪些因素会导致回流?
1、调整窗口的大小;
2、改变字体,如果用rem 设置了根目录的字体大小,这样就减少了回流的次数;
3、增加或者移除样式表;
4、内容的变化,用户在input中输入了文字(这是不可避免的);
5、激活CSS的伪类;
6、操作class属性;
7、基本操作DOM(包括js中的domcument等);
8、计算offsetWidth与offsetHeight 属性,获取元素在窗口中的位置;
9、在html代码中直接设置style 属性的值,这个降低了代码的利用率,还影响性能。
三、如何避免回流?
1、如果想设定元素的样式,直接改变class名,而不是改变class中的某个特定的属性,比如height,weight;
2、避免设置多项内联样式,就是说少使用style;
3、应用元素动画的时候,使用属性的position属性的fixed值或absolute值;
4、避免使用table布局;
5、尽量在DOM树的最末端改变class,改变子节点的样式。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/101905.html
摘要:之后,如果渲染树发生了变动,那么可能会触发回流或重绘中的一个或二者。在书写时要避免不必要的层级,书写时避免嵌套过深规则过于复杂,尤其是后代选择器,匹配选择器也会耗费更多的。 刚入行前端的时候是不是经常看到有文章说尽量不要用CSS通配符*,CSS选择器层叠最好不要超过三层,HTML少使用table,结构也要尽量简单一些...这一切说的不无道理,过多的使用确实会造成浏览器渲染的性能降低,当...
摘要:写在金三银四之际。一个节点触发了,浏览器会检查中其他所有节点的显示方式一个节点触发了会导致它的祖先节点,后代节点以及在它之后的节点全部。对性能的影响大于。解决方式控制我们无力去改变,对性能损害的程度,我们能做的只有减少它们发生的次数。 写在金三银四之际。 因为种种原因想要谋求新的发展,不得已翻起了尘封已久的高程书;写起了各种经典CSS布局;回顾起记忆略显模糊的几个项目。感慨着太多太多...
阅读 1781·2021-11-24 09:39
阅读 2276·2021-09-30 09:47
阅读 4127·2021-09-22 15:57
阅读 1855·2019-08-29 18:36
阅读 3558·2019-08-29 12:21
阅读 566·2019-08-29 12:17
阅读 1228·2019-08-29 11:25
阅读 707·2019-08-28 18:26