HTML中doctype的作用及幾種類型詳解


一、DOCTYPE標簽的定義與作用

  <!DOCTYPE>是一個用於聲明當前HTMl版本,用來告知web瀏覽器該文檔使用是哪種 HTML 或者 XHTML 規范來解析頁面,以便瀏覽器更加准確的理解頁面內容,更加良好地展現內容效果!

二、DOCTYPE標簽的特點

  1.<!DOCTYPE> 標簽沒有結束標簽;

  2.<!DOCTYPE>聲明被所有主流瀏覽器支持;

  3.<!DOCTYPE>聲明不是一個HTML標簽,在HTML5中是可以不區分大小寫的;

  4.<!DOCTYPE>聲明必須位於HTML文檔中最前面,處於<html>標簽之前;

  注:HTML4.01是基於SGML(標准通用標記語言)的,需要以<!DOCTYPE>聲明引用一個DTD(文檔類型定義),用來保證瀏覽器按照DTD指定的標記規則解析網頁內容!HTML5不基於SGML,所以不需要指定DTD。

三、DOCTYPE與瀏覽器模式

  1.聲明與否的影響

  <!DOCTYPE>聲明的前面是沒有任何內容的,如果有其他內容(空格除外)就會使瀏覽器在 IE下開啟怪異模式渲染網頁;如果瀏覽器進入怪異模式,就會按自己的方式解析渲染頁面。那么,在不同的瀏覽器下,顯示的樣式效果會不一致。

  如果不寫文檔DOCTYPE聲明,瀏覽器將無法獲知HTML或XHTML文檔的類型,也會進入怪異模式;還有在IE6以下版本永遠進入怪異模式;

  但是,只要我們對文檔DOCTYPE做了正確的聲明,瀏覽器就會進入標准模式;瀏覽器會按照W3C的標准來解析渲染頁面,那么,在所有的瀏覽器下,顯示的樣式效果會保持一致。因此, <!DOCTYPE>聲明還是很有必要的。

  2.標准模式和兼容模式

  若文檔為標准模式,則該文檔的排版與JS運作模式都是以該瀏覽器支持的最高標准運行;兼容模式中,頁面以寬松的向后兼容的方式顯示,模擬老式瀏覽器的行為以防止站點無法工作。

四、DOCTYPE常見聲明類型

  HTML中<!DOCTYPE>常見聲明類型共有8種,分別是html5有1種,HTML 4.01和XHTML 1.0都有3種,XHTML 1.1有1種,它們的寫法如下:

  1.HTML5 <!DOCTYPE>聲明——》<!doctype html>

  2.HTML 4.01和XHTML 1.0

    strict包含所有 HTML 元素和屬性,但不包括展示性的和棄用的元素(比如 font)。不允許框架集(Framesets)。

    transitional該 DTD 包含所有 HTML 元素和屬性,包括展示性的和棄用的元素(比如 font)。不允許框架集(Framesets)。

    framesets該 DTD 等同於 HTML 4.01 Transitional,但允許框架集內容。

  3.XHTML 1.1規定了一種聲明, 等同於 XHTML 1.0 Strict,但允許添加模型。

五、DOCTYPE對HTML標簽的影響

  html版本經過了幾次的升級,每次升級都會棄用一些不適用的舊標簽,而增加某些新的html標簽。因此,對於不同html版本的doctype文檔類型聲明,能合法使用的html標簽也是有所不同。比如:

  <article>和<aside>標簽,能在html5中能使用,而在HTML 4.01和XHTML中就不能使用;

  <center>標簽,在html5和XHTML1.0版本中是不可用的,而在HTML4.01和XHTML1.1的<!DOCTYPE>聲明中,只有Transitional和Frameset是可用的!由此可見,<!DOCTYPE>聲明的html版本,也決定了哪些html標簽可以合法使用!

 

以上內容原文轉自(https://www.liudaima.com/a/45.html),如有侵權,聯系刪除

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM