美文网首页
你怎么也理解不了的回流和重绘

你怎么也理解不了的回流和重绘

作者: 两朵小黑云 | 来源:发表于2020-08-21 17:48 被阅读0次

浏览器的渲染过程

本文先从浏览器的渲染过程来从头到尾的讲解一下回流重绘,如果大家想直接看如何减少回流和重绘,优化性能,可以跳到后面。(这个渲染过程来自MDN

image.png

so? 我们管中窥豹,可见一斑,浏览器渲染过程如下:

  1. 解析HTML,生成DOM树,解析CSS,生成CSSOM树
  2. 将DOM树和CSSOM树结合,生成渲染树(Render Tree)
  3. Layout(回流):根据生成的渲染树,进行回流,得到节点的几何信息(位置,大小)
  4. Painting(重绘) :根据渲染树以及回流得到的几何信息,得到节点的绝对像素
  5. Display:将像素发送给GPU,展示在页面上。(这一步其实还有很多内容的,不多说了)

细一点,再细一点
为了构建渲染树,浏览器主要完成了以下工作:

  1. 从DOM树的根节点开始遍历每个可见节点
  2. 对于每个可见的节点,找到CSSOM树中相应的规则,并应用他们
  3. 根据每个可见节点以及其对应的样式,组合生成渲染树

回流

前面我们通过构造渲染树,我们将可见DOM节点以及它对应的样式结合起来,可是我们还需要计算它们在设备视口(viewport)内的确切位置和大小,这个计算的阶段就是回流。

重绘

最终,我们通过构造渲染树和回流阶段,我们知道了哪些节点是可见的,以及可见节点的样式和具体的几何信息(位置、大小),那么我们就可以将渲染树的每个节点都转换为屏幕上的实际像素,这个阶段就叫做重绘节点
未完...

相关文章

  • 你怎么也理解不了的回流和重绘

    浏览器的渲染过程 本文先从浏览器的渲染过程来从头到尾的讲解一下回流重绘,如果大家想直接看如何减少回流和重绘,优化性...

  • 前端性能优化(HTML、CSS、JS)

    1.HTML优化篇 1.减少重绘和回流 不了解重绘和回流请点击我要了解 回流这一阶段主要是计算节点的位置和几何信息...

  • 面经 之 Browser浏览器读后感

    浏览器,原文请移步Browser | InterviewMap 回流和重绘 回流和重绘 - 掘金 存储 cooki...

  • 前端总结(后续继续更新)

    1,reflow和repaint:回流和重绘。回流:renderTree 重建。重绘:外观样式风格进行更新。(co...

  • 前端一些细节

    1,reflow和repaint:回流和重绘。回流:renderTree 重建。重绘:外观样式风格进行更新。(co...

  • 22,重绘、回流

    1,浏览器渲染机制 2,重绘 3,回流 > 重绘。 4,浏览器优化 5,减少重绘和回流

  • 页面重绘和回流以及优化

    页面重绘和回流以及优化 在讨论页面重绘、回流之前。需要对页面的呈现流程有些了解,页面是怎么把html结合css等显...

  • 浏览器渲染回流重绘与性能优化

    我们根据渲染的流程可知, 回流一定会触发重绘,而重绘不一定会回流。 渲染性能优化 回流和重绘的代价是比较昂贵的,渲...

  • 页面回流

    理解浏览器的重绘与回流(repaint&&reflow) 今天在做练习的时候,遇到了重绘与回流这个词,表示连个毛都...

  • 浅谈回流和重绘

    页面的回流和重绘会影响JavaScript性能,如果你的html很大很复杂,页面的回流和重绘是一个非常值得关注的点...

网友评论

      本文标题:你怎么也理解不了的回流和重绘

      本文链接:https://www.haomeiwen.com/subject/proujktx.html