重排和重绘的概念:
重排:部分渲染树(或者整个渲染树)需要重新分析并且节点尺寸需要重新计算。这被称为重排,注意这里至少会有一次重排——初始化页面布局。
重绘:由于节点的几何属性发生改变或者由于样式发生改变,例如改变元素背景色时,屏幕上的部分内容需要更新。这样的更新被称为重绘。
什么情况下会触发重排和重绘:
添加、删除、更新DOM节点;
通过display:none隐藏一个DOM节点,触发重排和重绘;
通过visibility:hidden隐藏一个DOM节点,只触发重绘,因为没有发生几何变化;
移动或者给页面中的DOM节点添加动画;
添加一个样式表,调整样式属性;
用户行为,例如调整窗口大小,改变字号,或者滚动;
网友评论