為什么css還沒(méi)下載完,domcontentloaded(藍(lán)色線(xiàn)) 就完成了?
認(rèn)證0級(jí)講師
1.瀏覽器開(kāi)始解析目標(biāo)HTML文件,執(zhí)行流的順序?yàn)樽陨隙隆?br>2.HTML解析器將HTML結(jié)構(gòu)轉(zhuǎn)換為基礎(chǔ)的DOM(文檔對(duì)象模型),構(gòu)建DOM樹(shù)完成后,觸發(fā)DomContendLoaded事件。
3.CSS解析器將CSS解析為CSSOM(層疊樣式表對(duì)象模型),一棵僅含有樣式信息的樹(shù)。
4.CSSOM和DOM開(kāi)始合并構(gòu)成渲染樹(shù),每個(gè)節(jié)點(diǎn)開(kāi)始包含具體的樣式信息。
5.計(jì)算渲染樹(shù)中個(gè)各個(gè)節(jié)點(diǎn)的位置信息,即布局階段。
6.將布局后的渲染樹(shù)顯示到界面上。
domcontentloaded
本身就是當(dāng)HTML標(biāo)簽已經(jīng)完成加載和解析時(shí),無(wú)需等待樣式表。
DOMContentLoaded 事件將被觸發(fā),當(dāng)初始HTML文檔已經(jīng)完成加載和解析時(shí),而無(wú)需等待樣式表,圖像和子幀的完全加載。
參考:https://developer.mozilla.org...
首先css
下載不會(huì)阻塞網(wǎng)頁(yè)渲染,一個(gè)網(wǎng)頁(yè)由html
和資源資源組成,其他資源的下載不會(huì)影響到html
文件本身的下載,他們之間是并發(fā)的。
DOM 和 CSSOM 是獨(dú)立的數(shù)據(jù)結(jié)構(gòu)
參考:https://developers.google.com...