摘要:所以選擇器嵌套層次越深,匹配的時間會越長。加載會阻塞初次渲染對于首頁無關的樣式,需要使用適當的方式避免其阻塞初次渲染會阻塞頁面初次渲染使用媒體查詢,雖然加載樣式表,但只針對打印時才應用該樣式,不會阻塞初次渲染。通過引入,可以避免阻塞。
瀏覽器渲染原理
DOM樹構建
過程:
1.根據HTML文檔的內容,根據標簽進行分詞Token
2.根據Token生產對應的節點Node
3.將節點根據嵌套關系組合成為一棵對象節點樹DOM
瀏覽器解析文檔對象模型DOM是增量進行的,無需等待整個HTML文檔加載完畢,便可以開始解析DOM CSSOM解析會阻塞HTML Parser;JavaScript腳本文件執行會阻塞HTML解析;CSS、JavaScript、Images和Font等靜態資源的異步加載的,渲染頁面與CSS解析與JavaScript執行會有相互的依賴
CSSOM樹的構建
CSSOM的解析依賴于選擇器,選擇器的匹配是從內到外的。所以選擇器嵌套層次越深,匹配的時間會越長。
CSSOM只解析可視部分body標簽中的內容,將所有匹配的元素共同構建一個CSSOM樹,從根節點一次向下,所有節點的屬性向下繼承RenderTree樹的構建
利用DOM和CSSOM組合構建生成RenderTree,對應Recaculate Style
RenderTree中包含所有渲染網頁必須的節點 無需渲染的節點不會被添加到RenderTree中,如head和display:none;的節點 visibility: hidden;的節點會添加到RenderTree中
瀏覽器通過GET請求獲取網頁HTML,同時將增量解析HTML文檔,生成DOM樹
解析DOM節點樹時,對于需要加載的資源全部執行異步加載,但是CSS的解析、JavaScript的執行與font文件的下載會阻塞HTML Parser
局部DOM樹與CSSOM樹構建完成后,立即組裝RenderTree進行渲染
瀏覽器渲染頁面的時機
增量解析解析DOM樹,并且完成相應CSSOM解析后(RenderTree依賴于DOM樹,CSSOM樹),開始直接渲染頁面。
4.2 CSS加載會阻塞初次渲染
對于首頁無關的樣式,需要使用適當的方式避免其阻塞初次渲染:
document.write()會阻塞頁面初次渲染
使用media=print媒體查詢,雖然加載樣式表,但只針對打印時才應用該樣式,不會阻塞初次渲染。
通過DOMAPI引入CSS,可以避免阻塞。
CSS中。
哎呀文章有點亂了
搬運地址
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/50751.html
摘要:五瀏覽器繪制網頁繪制過程主要是結構與樣式的結合,以及行為動態效果的展現。之后會寫系列文章,歡迎圍觀主要參考文章基礎進階詳解與編碼前端面試題從到頁面展現,這之中發生了什么圖解 流程概述: 地址欄輸入URL ——> 域名解析 ——> 服務器處理請求 ——> 瀏覽器處理響應 ——> 瀏覽器繪制網頁 一.地址欄輸入URL 認識URL showImg(https://segmentfault....
摘要:是提供的類,為了在容器中建立容器而服務的。主要處理的請求分發,對進行管理。接收到請求由進行匹配,匹配成功后交由進行業務邏輯的處理,業務邏輯處理完成后交由進行數據的解析同時找到對應的,最終由將的結果到瀏覽器進行解析。 spring給我們帶來了什么? spring IoC、AOP、Transaction這些都是很重要的特性,但是這篇這些都不是主角,主要來談談springMVC是如何對請求參...
摘要:其主要行為是將解釋器進程保持在內存中并因此獲得較高的性能。當子進程關閉連接時,請求便處理完成。 關于factcgi和cgi的學習 1、FastCGI是什么? 首先我們看下CGI,CGI全稱為通用網關接口 Common Cateway Interface.用于HTTP服務上的程序服務通信交流的一種工具,可以讓一個客戶端,從網頁瀏覽器向執行在網絡服務器上的程序請求數據。CGI描述了服務器...
摘要:其主要行為是將解釋器進程保持在內存中并因此獲得較高的性能。當子進程關閉連接時,請求便處理完成。 關于factcgi和cgi的學習 1、FastCGI是什么? 首先我們看下CGI,CGI全稱為通用網關接口 Common Cateway Interface.用于HTTP服務上的程序服務通信交流的一種工具,可以讓一個客戶端,從網頁瀏覽器向執行在網絡服務器上的程序請求數據。CGI描述了服務器...
閱讀 1366·2021-11-22 15:25
閱讀 3364·2021-10-21 09:38
閱讀 1580·2021-10-19 13:21
閱讀 1005·2021-09-06 15:00
閱讀 1686·2019-08-30 15:44
閱讀 2598·2019-08-29 15:40
閱讀 3453·2019-08-29 13:44
閱讀 2066·2019-08-26 16:56