瀏覽器中關於標準模式與怪異模式的解析

黄舟
發布: 2017-10-27 10:28:42
原創
1918 人瀏覽過

瀏覽器的標準模式和怪異模式到底是什麼?

標準模式:

是瀏覽器依照W3C標準解析執行程式碼,這樣用規定的語法去渲染,就可以相容各個瀏覽器,保證以正確的形式展示網頁。

怪異模式:

是使用瀏覽器自己的方式解析執行程式碼,因為不同瀏覽器解析執行的方式不一樣,所以我們稱之為怪異模式。

為什麼還要存在怪異模式呢?

在HTML與CSS的標準化未完成之前,各個瀏覽器對於HTML和CSS的解析有各自不同的實現,而有很多舊的網頁都是按照這些非標準的實現去設計的。在HTML與CSS標準確定之後,瀏覽器一方面要按照標準去實現對HTML與CSS的支持,另一方面又要保證對非標準的舊網頁設計的後向相容性。因此,現代的瀏覽器一般都有兩種渲染模式:標準模式和怪異模式。在標準模式下,瀏覽器依照HTML與CSS標準對文件進行解析與渲染;而在怪異模式下,瀏覽器則依照舊有的非標準的實作方式對文件進行解析與渲染。

瀏覽器如何決定使用哪一種渲染模式?

如果你的頁面加入了<!DOCTYPE html>(注意:大小寫不敏感),那麼就等同於開啟了標準模式。即如下面程式碼展示:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title></title>
  </head>
  <body>
  </body>
</html>
登入後複製

如果省略了,瀏覽器會採用不符合某些標準的渲染模式。

標準模式與怪異模式的常見差異

  • #盒模型的處理差異:標準CSS盒模型的寬度和高度等於內容區的高度和寬度,不包含內邊距和邊框,而IE6之前的瀏覽器實現的盒子模型的寬高計算方式是包含內邊距和邊框的。因此,對於IE,怪異模式和標準模式下的盒子模型寬高計算方式是不一樣的;

  • 行內元素的垂直對齊:很多早期的瀏覽器對齊圖片至包含它們的盒子的下邊框,雖然CSS的規格要求它們被對齊至盒內文字的基線。標準模式下,基於Gecko的瀏覽器將會對齊至基線,而在quirks模式下它們會對齊至底部。最直接的例子就是圖片的顯示。在標準模式下,圖片並不是與父元素的下邊框對齊的,如果仔細觀察,你會發現圖片與父元素下邊框之間存在一點小空隙。那是因為標準模式下,圖片是基線對齊的。而怪異模式下,則不存在這個問題。

#

以上是瀏覽器中關於標準模式與怪異模式的解析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!