1线椰、首先我們可能輸入一個域名,但是在web服務器是不可能直接通過域名拿到數(shù)據(jù)的尘盼。所以第一步就是通過域名去dns服務器獲取到我們在web服務器的ip地址憨愉。
2、拿到ip地址返回客戶端瀏覽器卿捎,再去web服務器請求資源配紫。這個過程需要經(jīng)過TCP/IP協(xié)議,也就是需要客戶端和服務端進行三次握手(建立連接)
3娇澎、建立連接之后笨蚁,服務端就可以向客戶端傳輸數(shù)據(jù)了睹晒√俗客戶端拿到一個index頁面以后括细。就是瀏覽器開始渲染頁面了
4、瀏覽器端渲染
從服務器獲取到的html頁面被html解析器解析成dom tree
css被css解析器解析成cssom 樹
dom樹和cssom樹結(jié)合在一起戚啥,形成渲染樹奋单。
然后進行節(jié)點信息計算,就是根據(jù)渲染樹計算每個節(jié)點的幾何信息
再通過渲染繪制猫十,也就是根據(jù)計算好的信息繪制整個頁面
最后通過回流和重繪览濒,因為js可能操作css樣式來進行重新布局,這就會導致回流和重繪的觸發(fā)拖云,從而導致頁面的重新渲染
通過這上面所述贷笛,最終呈現(xiàn)一個動態(tài)頁面在我們面前。
講的不好的地方歡迎指正宙项,萬分感謝乏苦!