什么是重排和重绘?

重排:

        当dom的变化影响了元素的几何信息(位置),浏览器需要计算元素的几何属性,将其安放在界面中的正确位置,这个过程叫做重排,表现为重新生成布局,重新排列元素。
重绘:

        当一个元素(颜色 字体颜色)的外观被改变,但是没有改变布局,重新把元素外观绘制出来的过程,叫做重绘,表现为某些元素的外观被改变;


      重排和重绘会消耗浏览器的性能(会去计算浏览器的内存空间 占据cpu)会造成页面卡顿,ui展示迟缓。
    相比之下,重排性能影响更大,两者无法避免选择重绘.
    重绘不一定出现重排,但是重排一定出现重绘.
    触发重排和重绘:
    1.添加、删除(重排)、更新节点(重绘)
    2.通过display:none(重排)
    3.通过visiblity:hidden(重绘)
    4.添加动画(重排)
    5.添加一个样式表(重排)
    6.用户行为(重排或者重绘)

你可能感兴趣的:(javascript,前端)