瀏覽器渲染過程

2021-10-10 05:23:55 字數 907 閱讀 8357

瀏覽器通過瀏覽器核心對html檔案進行解析來生成網頁,通過學習其渲染過程可以理解html檔案時如何呈現為網頁的,怎樣優化它。

瀏覽器向伺服器發出請求,伺服器返回html檔案

瀏覽器開始載入html**,發現標籤內有乙個標籤引用外部css檔案;

瀏覽器又發出css檔案的請求,伺服器返回這個css檔案;

瀏覽器繼續載入html中部分的**,並且css檔案已經拿到手了,可以開始渲染頁面了;

伺服器返回檔案,由於占用了一定面積,影響了後面段落的排布,因此瀏覽器需要重新渲染這部分**。

到達文件尾部,渲染結束

如上所述,當瀏覽器發現某個部分需要改變且這個改變會影響布局,它就得倒回去重新渲染,這個過程稱為』reflow』,有些reflow是可以避免的,上面這個例子的reflow就可以通過規定的長寬屬性避免。

抽象的說,網頁渲染過程如下:

解析html以重建dom樹(parsing html to construct the dom tree ):渲染引擎開始解析html文件,轉換樹中的標籤到dom節點,它被稱為「內容樹」。

構建渲染樹(render tree construction):解析css(包括外部css檔案和樣式元素),根據css選擇器計算出節點的樣式,建立另乙個樹 —- 渲染樹。

布局渲染樹(layout of the render tree): 從根節點遞迴呼叫,計算每乙個元素的大小、位置等,給每個節點所應該出現在螢幕上的精確座標。

繪製渲染樹(painting the render tree) : 遍歷渲染樹,每個節點將使用ui後端層來繪製。

每當乙個新元素加入到dom樹當中,瀏覽器便會通過css引擎查遍css樣式表,找到符合該元素的樣式規則應用到這個元素上,這個查詢過程對每條規則都是按從右向左的順序進行的,當我們編寫css樣式表時應注意這一點————選擇器的順序要和最快查詢順序倒著寫。

瀏覽器渲染過程

瀏覽器的渲染過程 第一步 html經過html parser p s 解析為dom tree 第二步 css根據css規則經過css解析器解析為style rules cssom tree 第三步 兩棵樹經過attachment結合為 render tree 形成一棵大樹,此時它還是一棵迷茫的樹,不...

瀏覽器渲染過程

1.頁面準備 2.重定向 在header定義了重定向才會有這個過程,如果沒有就不會產生這個過程 關於重定向的分析 4.dns解析 把網域名稱解析成ip,如果直接用ip位址訪問,不會產生這個過程 5.tcp連線 6.request header 請求頭資訊 7.request body 請求體資訊,比...

瀏覽器渲染過程

這個過程可以大致分為兩個部分 網路通訊和頁面渲染。輸入url按下回車之後,瀏覽器會去瀏覽器快取中尋找該url的ip 沒有的話去系統快取中找,還是沒有的話去路由器快取中尋找 再沒有就去系統host檔案中找,還是沒有最後只能去請求dns伺服器,然後dns給乙個ip給瀏覽器 瀏覽器根據這個ip位址,向伺服...