瀏覽器載入和渲染html的順序、如何加快HTML頁面載入速度、HTML頁面載入和解析流程等等,在本文將為大家詳細介紹下,有興趣的朋友不要錯過
瀏覽器載入和渲染html的順序
1. IE下載的順序是從上到下,渲染的順序也是從上到下,下載和渲染是同時進行的。
2. 在渲染到頁面的某一部分時,其上面的所有部分都已經下載完成(並不是說所有相關聯的元素都已經下載完)。
3. 如果遇到語意解釋性的標籤嵌入檔案(JS腳本,CSS樣式),那麼此時IE的下載過程會啟用單獨連線進行下載。
4. 樣式表在下載完成後,將和先前下載的所有樣式表一起進行解析,解析完成後,將對先前所有元素(含以前已經渲染的)重新進行渲染。
5. JS、CSS中如有重定義,後面定義函數將覆寫前定義函數。
JS的載入
1. 不能並行下載和解析(阻塞下載)。
2. 當引用了JS的時候,瀏覽器發送1個js request就會一直等待該request的回傳。因為瀏覽器需要1個穩定的DOM樹結構,而JS中很有可能有
程式碼直接改變了DOM樹結構,例如使用document.write 或append Child,甚至是直接使用的location.href進行跳轉,瀏覽器為了防止出現JS修
改變DOM樹,需要重新構建DOM樹的情況,所以就會阻塞其他的下載和呈現.
如何加快HTML頁面載入速度
1. 頁面減重:
a. 頁面的肥瘦是影響載入速度最重要的因素。
b. 刪除不必要的空格、註解。
c. 將inline的script和css移到外部檔案。
d. 可以使用HTML Tidy來為HTML減肥,也可以使用一些壓縮工具來為JavaScript減肥。
2. 減少檔案數:
a. 減少頁面上引用的檔案數量可以減少HTTP連線數。
b. 許多JavaScript、CSS檔案可以合併最好合併,人家財幫子都把自己的JavaScript. functions和Prototype.js合併到一個base.js檔案裡去了。
3. 減少網域名稱查詢:
a. DNS查詢和解析網域名稱也是消耗時間的,所以要減少對外部JavaScript、CSS、圖片等資源的引用,不同網域的使用越少越好。
4. 快取重複使用資料:
a. 快取重複使用的資料。
5. 最佳化頁面元素載入順序:
a. 首先載入頁面最初顯示的內容和與之相關的JavaScript和CSS,然後載入HTML相關的東西,像什麼不是最初顯示相關的圖片、flash、影片等很肥的資源就最後載入。
6. 減少inline JavaScript的數量:
a. 瀏覽器parser會假設inline JavaScript會改變頁面結構,所以使用inline JavaScript開銷較大。
b. 不要使用document.write()這種輸出內容的方法,使用現代W3C DOM方法來為現代瀏覽器處理頁面內容。
7. 使用現代CSS和合法的標籤:
a. 使用現代CSS來減少標籤和圖像,例如使用現代CSS+文字完全可以替代一些只有文字的圖片。
b. 使用合法的標籤避免瀏覽器解析HTML時做「error correction」等操作,還可以被HTML Tidy來給HTML減肥。
8. Chunk your content:
a. 不要使用巢狀table,而使用非巢狀table或p。將基於大塊巢狀的table的layout分解成多個小table,這樣就不需要等到整個頁面(或大table)內容全部載入完才顯示。
9. 指定圖片和table的大小:
a. 如果瀏覽器可以立即決定圖片或table的大小,那麼它就可以馬上顯示頁面而不要重新做一些佈局安排的工作。
b. 這不僅加快了頁面的顯示,也預防了頁面完成載入後佈局的一些不當的改變。
c. image使用height和width。
HTML頁面載入與解析流程
#1. 使用者輸入網址(假設是html頁面,並且是第一次造訪),瀏覽器向伺服器發出請求,伺服器傳回html檔案。
2. 瀏覽器開始載入html程式碼,發現head>標籤內有一個標籤引用外部CSS檔案。
3. 瀏覽器又發出CSS檔案的請求,伺服器回傳這個CSS檔案。
4. 瀏覽器繼續載入html中
5. 瀏覽器在程式碼中發現一個
6. 伺服器傳回圖片文件,由於圖片佔據了一定面積,影響了後面段落的排布,因此瀏覽器需要回頭重新渲染這部分程式碼。
7.瀏覽器發現了一個包含一行Javascript程式碼的<script>標籤,趕快執行它。 <br/><br/>8. Javascript腳本執行了這條語句,它命令瀏覽器隱藏掉程式碼中的某個<style>(style.<a href="http://www.php.cn/wiki/927.html" target="_blank">display=”none”)。杯具啊,突然就少了這麼一個元素,瀏覽器不得不重新渲染這部分程式碼。 <br/><br/>9. 終於等到了的到來,瀏覽器淚流滿面…<br/><br/>10. 等等,還沒完,使用者點了一下介面中的「換膚」<a href="http://www.php.cn/code/5991.html" target="_blank">按鈕,Javascript讓瀏覽器換了一下<link>標籤的CSS路徑。 <br/><br/>11. 瀏覽器召集了在座的各位<p><span><ul><li>們,“大夥兒收拾行李,咱得重新來過……”,瀏覽器向伺服器請求了新的CSS文件,重新渲染頁面。 <p>【相關推薦】<p>1. <a href="http://www.php.cn/course/list/11.html" target="_self">Html免費視訊教學<p>2. <a href="http://www.php.cn/div-tutorial-362996.html" target="_self">html實現固定表格四周並且可以上下左右滾動<p>3. <a href="http://www.php.cn/div-tutorial-362995.html" target="_self">詳解前端發展常用的HTML標籤<p>4. <a href="http://www.php.cn/div-tutorial-362994.html" target="_self">透過marquee標籤完成捲動效果的純html程式碼<p><a href="http://www.php.cn/div-tutorial-363090.html" target="_self">###################################################################### ###5. ###html利用Mailto實作郵件傳送功能的實例詳解######</script>
以上是瀏覽器載入和渲染html的順序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

HTML是一種用於構建網頁的語言,通過標籤和屬性定義網頁結構和內容。 1)HTML通過標籤組織文檔結構,如、。 2)瀏覽器解析HTML構建DOM並渲染網頁。 3)HTML5的新特性如、、增強了多媒體功能。 4)常見錯誤包括標籤未閉合和屬性值未加引號。 5)優化建議包括使用語義化標籤和減少文件大小。

WebDevelovermentReliesonHtml,CSS和JavaScript:1)HTMLStructuresContent,2)CSSStyleSIT和3)JavaScriptAddSstractivity,形成thebasisofmodernWebemodernWebExexperiences。

HTML的作用是通過標籤和屬性定義網頁的結構和內容。 1.HTML通過到、等標籤組織內容,使其易於閱讀和理解。 2.使用語義化標籤如、等增強可訪問性和SEO。 3.優化HTML代碼可以提高網頁加載速度和用戶體驗。

htmlisaspecifictypefodyfocusedonstructuringwebcontent,而“代碼” badlyLyCludEslanguagesLikeLikejavascriptandPytyPythonForFunctionality.1)htmldefineswebpagertuctureduseTags.2)“代碼”代碼“ code” code code code codeSpassSesseseseseseseseAwiderRangeLangeLangeforLageforLogageforLogicIctInterract

HTML、CSS和JavaScript是Web開發的三大支柱。 1.HTML定義網頁結構,使用標籤如、等。 2.CSS控製網頁樣式,使用選擇器和屬性如color、font-size等。 3.JavaScript實現動態效果和交互,通過事件監聽和DOM操作。

HTML定義網頁結構,CSS負責樣式和佈局,JavaScript賦予動態交互。三者在網頁開發中各司其職,共同構建豐富多彩的網站。

HTML適合初學者學習,因為它簡單易學且能快速看到成果。 1)HTML的學習曲線平緩,易於上手。 2)只需掌握基本標籤即可開始創建網頁。 3)靈活性高,可與CSS和JavaScript結合使用。 4)豐富的學習資源和現代工具支持學習過程。

AnexampleOfAstartingTaginHtmlis,beginSaparagraph.startingTagSareEssentialInhtmlastheyInitiateEllements,defiteTheeTheErtypes,andarecrucialforsstructuringwebpages wepages webpages andConstructingthedom。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

記事本++7.3.1
好用且免費的程式碼編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3漢化版
中文版,非常好用