https://developers.google.cn/...
根绝上面的文章,浏览器绘制页面大致分下面几步:
处理 HTML 标记,构建 DOM 树。
处理 CSS 标记,构建 CSSOM 树。
将 DOM 树和 CSSOM 树融合成渲染树。
根据渲染树来布局,计算每个节点的几何信息。
在屏幕上绘制各个节点。
并且根据https://developers.google.cn/...里所说呈现树是domContentLoaded后构建的。
domContentLoaded:标记 DOM 准备就绪并且没有样式表阻碍 JavaScript 执行的时间点 - 意味着我们可以开始构建呈现树了。
但是问题来了,我发现很多网页都是domContentLoaded事件之前已经开始进行了第一次绘制。也就是呈现树(渲染树)没有构建完成时。
所以我的问题是:domContentLoaded之前,也就是呈现树都没有构建完成之前,就开始绘制是什么情况?