從url輸入網址

面試題:從一個url地址到頁面渲染完成 發生了什麼css

1.DNS解析 將域名地址解析爲IP地址
瀏覽器的DNS緩存
系統DNS緩存
路由器DNS緩存
網絡運營商DNS緩存
遞歸搜索
2.TCP連接 TCP三次握手
第一次握手,由瀏覽器發起,告訴服務器我要發請求了
第二次握手 由服務器發起 告訴瀏覽器我準備接受了 你趕忙發送吧
第三次握手 由瀏覽器發起 告訴服務器我立刻就發了 準備接收吧html

3.發送請求
請求報文 http協議的通訊內容面試

4接受響應
響應報文瀏覽器

5渲染頁面
碰見HTML標記 瀏覽器調用html解析器解析成Token並構建成dom樹
碰見style/link標記 瀏覽器會調用css解析器處css標記並構建成cssom樹
遇到script標記 調用js解析器 處理script代碼(綁定事件 修改dom、cssom樹)
將dom樹和cssom樹合併成一個渲染樹
根據渲染樹來計算佈局 將各個節點顏色繪製到屏幕上(渲染)緩存

注意:
 這五個步驟不必定按順序執行  若是dom樹 或者cssom樹被修改了可能會執行屢次佈局和渲染
 每每實際頁面中,這些步驟都會執行屢次的

6.斷開鏈接 TCP四次揮手
第一次揮手 由瀏覽器發起的 發送給服務器 我東西發送完了(請求報文),你準備關閉吧
第二次揮手 由服務器發起的 告訴瀏覽器我東西接受完了(請求報文) 我準備關閉了 你也準備吧
第三次揮手 有服務器發起 告訴瀏覽器我東西發送完了(響應報文) 你準備關閉吧
第四次揮手 由瀏覽器發起 告訴服務器 我東西接受完了(響應報文) 準備關閉了 你也準備吧服務器

相關文章
相關標籤/搜索