重排和重绘是什么?
重排:当DOM的变化影响了元素的几何信息(元素的位置和尺寸大小),
浏览器需要重新计算元素的几何属性,将其安放在界面中的正确位置,
这个过程叫重排。
重绘:当一个元素的外观发生变化,但没有改变布局,重新把元素的外观绘制出来的过程叫重绘。
所以重绘跳过看创建布局树和分层的阶段。
重排需要重新计算布局树,重绘不需要,重排必定发生重绘,但是设计到重绘不一定要重排。
`触发重排的方法`:页面初始渲染、添加/删除可见的DOM元素、改变位置、改变元素尺寸
改变元素内容、改变元素字体大小、改变浏览器窗口尺寸、设置style属性的值。
`避免重排的方式:`样式集中改变、使用absolute或fixed脱离文档流。