重排、重绘
重排
概念:页面中元素样式的改变影响它在文档流中的位置
引起重排的操作
- 页面首次渲染
- 浏览器窗口大小发生变化
- 元素尺寸或位置发生变化
- 元素内容变化(文字数量或图片大小等等)
- 元素字体大小变化
- 添加或删除了可见的dom元素
- 激活css伪类
重绘
概念:当页面中元素样式的改变并不影响它在文档流中的位置时,例如更改了字体颜色,浏览器会将新样式赋予给元素并重新绘制的过程称。
引起重绘的操作
- color
- background
- visibility
减少重绘/重排
- 减少通过JavaScript代码修改元素样式,尽量使用修改class名方式操作样式或动画;
- 动画尽量使用在绝对定位或固定定位的元素上;
- 用事件委托来减少事件处理器的数量。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!