回流与重绘

2023-04-25  本文已影响0人  JaniceZD

写在前面

在讨论回流(重排)与重绘之前,先了解具体的浏览器解析渲染机制:

在页面初始渲染阶段,回流不可避免的触发,可以理解成页面一开始是空白的元素,后面添加了新的元素使页面布局发生改变。

回流 (Reflow)

回流(重排):当渲染树中的元素的布局(如:尺寸、位置)发生改变时,重新生成布局,重新排列元素。

回流的触发条件

重绘 (Repaint)

重绘:当渲染树中的元素外观(如:颜色、背景、visibility)发生改变,不影响布局时,产生重绘。

注意:回流必将引起重绘,而重绘不一定会引起回流

重绘的触发条件

如何避免触发回流和重绘

也可以先将元素设置为 display: none,操作结束后再把它显示出来。因为在 display 属性为 none 的元素上进行的 DOM 操作不会引发回流和重绘。(这个过程称为离线操作)

参考链接

上一篇 下一篇

猜你喜欢

热点阅读