重新焊接和重新绘制有什么区别?

我有点不清楚reflow + repaint之间的区别(如果有什么区别的话)

似乎回stream可能正在改变各种DOM元素的位置,重绘只是渲染一个新的对象。 例如,当移除元素时会发生回stream,并且在改变颜色时会发生重绘。

这是真的?

这篇文章似乎涵盖了回stream与重绘性能问题

http://www.stubbornella.org/content/2009/03/27/reflows-repaints-css-performance-making-your-javascript-slow/

至于定义,从这个职位:

在对更改可见性的元素外观进行更改时发生重绘,但不影响其布局。

这方面的例子包括轮廓,可视性或背景颜色。 根据Opera的说法,重绘是昂贵的,因为浏览器必须validationDOM树中所有其他节点的可见性。

回stream对性能来说更为重要,因为它涉及影响页面(或整个页面)部分布局的更改。

http://csstriggers.com上了解哪些CSS属性效果重新绘制和审查;

在我看来,重绘只影响DOM本身,但重排影响整个页面。

当某些只有其肤色风格(如颜色和可见性)发生变化时才会进行重绘。

当DOM的页面改变其布局时发生回stream。

最近我发现一个网站可以search哪个属性会触发重绘或重排。 http://csstriggers.com/

这是另一个伟大的职位: http : //blog.letitialew.com/post/30425074101/repaints-and-reflows-manipulating-the-dom

重绘或重绘会遍历所有元素,并确定其可见性,颜色,轮廓和其他视觉样式属性,然后更新屏幕的相关部分。

回stream计算页面的布局。 元素的回stream会重新计算元素的尺寸和位置,并且还会触发元素的子元素,祖先和DOM元素之后出现的元素的进一步回stream。 然后它调用最后的重绘。 回stream是非常昂贵的。

还介绍了何时发生回stream以及如何使回stream最小化。