为什么css还没下载完,domcontentloaded(蓝色线) 就完成了?
认证0级讲师
1.浏览器开始解析目标HTML文件,执行流的顺序为自上而下。2.HTML解析器将HTML结构转换为基础的DOM(文档对象模型),构建DOM树完成后,触发DomContendLoaded事件。3.CSS解析器将CSS解析为CSSOM(层叠样式表对象模型),一棵仅含有样式信息的树。4.CSSOM和DOM开始合并构成渲染树,每个节点开始包含具体的样式信息。5.计算渲染树中个各个节点的位置信息,即布局阶段。6.将布局后的渲染树显示到界面上。
domcontentloaded本身就是当HTML标签已经完成加载和解析时,无需等待样式表。
domcontentloaded
link方式来加载css是和网页加载同时进行的
DOMContentLoaded 事件将被触发,当初始HTML文档已经完成加载和解析时,而无需等待样式表,图像和子帧的完全加载。参考:https://developer.mozilla.org...
首先css下载不会阻塞网页渲染,一个网页由html和资源资源组成,其他资源的下载不会影响到html文件本身的下载,他们之间是并发的。
css
html
DOM 和 CSSOM 是独立的数据结构参考:https://developers.google.com...
1.浏览器开始解析目标HTML文件,执行流的顺序为自上而下。
2.HTML解析器将HTML结构转换为基础的DOM(文档对象模型),构建DOM树完成后,触发DomContendLoaded事件。
3.CSS解析器将CSS解析为CSSOM(层叠样式表对象模型),一棵仅含有样式信息的树。
4.CSSOM和DOM开始合并构成渲染树,每个节点开始包含具体的样式信息。
5.计算渲染树中个各个节点的位置信息,即布局阶段。
6.将布局后的渲染树显示到界面上。
domcontentloaded
本身就是当HTML标签已经完成加载和解析时,无需等待样式表。link方式来加载css是和网页加载同时进行的
DOMContentLoaded 事件将被触发,当初始HTML文档已经完成加载和解析时,而无需等待样式表,图像和子帧的完全加载。
参考:https://developer.mozilla.org...
首先
css
下载不会阻塞网页渲染,一个网页由html
和资源资源组成,其他资源的下载不会影响到html
文件本身的下载,他们之间是并发的。DOM 和 CSSOM 是独立的数据结构
参考:https://developers.google.com...