一、定义
(1) 重绘(repaint):当页面中元素样式的改变并不影响它在文档流中的位置时(例如color、background-color、visibility等),浏览器会将新样式赋予给元素并重新绘制它,这个过程称为重绘。
(2) 回流(reflow):当渲染树中部分或全部元素的尺寸、结构、或某些属性发生改变时,浏览器重新渲染部分或全部文档的过程称为回流。
二、何时会引起重绘?
(1) 元素的颜色、透明度改变。
(2) text-alian改变等。
三、何时会引起回流?
(1) 添加或删除可见的DOM元素
(2) 元素的位置发生变化
(3) 元素的尺寸发生变化(包括外边距、内边框、边框大小、高度和宽度等)
(4) 内容发生变化,比如文本变化或图片被另一个不同尺寸的图片所替代。
(5) 浏览器的窗口尺寸变化(因为回流是根据视口的大小来计算元素的位置和大小的)
四、重绘和回流的联系?
回流一定会融发重绘,而重绘不一定会回流