重绘与回流的理解
重绘:当render tree中的一些元素需要更新属性,而这些属性只是影响元素的外观,风格,而不会影响布局的,比如
visibility、outline、背景色等属性的改变。
回流:DOM树中的元素被增加或者删除,导致浏览器需要重新的去渲染整个DOM树,回流比重绘更消耗性能,发生回流必定重绘,重绘不一定会导致回流。
减少重绘回流的办法:
1.减少对dom树的操作,减少对样式信息的请求
2.尽量将需要改变的dom操作一次完成,或者批量完成
3.将需要操作的元素的position设置为absolute或者fixed脱离文档流,这样更改就不会影响到其他元素