HTML DOCTYPE 標籤
Doctype是什麼?點選檢視詳解
<!DOCTYPE>
宣告幫助瀏覽器正確地顯示網頁。web世界中存在著很多不同的文件,只有瞭解了文件型別,瀏覽器才能正確的顯示文件。這就是
<!DOCTYPE>
的用處。<!DoCTYPE>並不是html標籤,它為瀏覽器提供一項資訊(宣告),即HTML是什麼版本編寫的。
所有瀏覽器都支援
<!DOCTYPE>
宣告。
例項
帶有 HTML5 DOCTYPE 的 HTML 文件:
<!doctype html>
<html>
<head>
<title>Title of the document</title>
</head>
<body>
The content of the document......
</body>
</html>
HTML 發展版本
從 Web 誕生早期至今,已經發展出多個 HTML 版本:
版本 | 年份 |
---|---|
HTML | 1991 |
HTML+ | 1992 |
HTML2.0 | 1995 |
HTML3.2 | 1997 |
HTML 4.01 | 1999 |
XHTML 1.0 | 2000 |
HTML5 | 2012 |
XHTML5 | 2013 |
定義和用法
提示:請始終向 HTML 文件新增
<!DOCTYPE>
宣告,這樣瀏覽器才能獲知文件型別。
<!DOCTYPE>
宣告必須是 HTML 文件的第一行,位於<html>標籤之前<!DOCTYPE>
不是html標籤,它是隻是web瀏覽器關於使用哪個HTML版本經行編寫的指令在 HTML 4.01 中,<!DOCTYPE> 宣告引用 DTD,因為 HTML 4.01 基於 SGML。DTD 規定了標記語言的規則,這樣瀏覽器才能正確地呈現內容。
HTML5 不基於 SGML,所以不需要引用 DTD。
HTML 4.01 與 HTML5 之間的差異
在 HTML 4.01 中有三種 <!DOCTYPE> 宣告。在 HTML5 中只有一種:
<!DOCTYPE html>
點選檢視HTML 元素表,其中列出了每種元素會出現在哪個文件型別中。
提示和註釋
註釋:
<!DOCTYPE>
宣告沒有結束標籤。提示:
<!DOCTYPE>
宣告對大小寫不敏感。提示:請使用 W3C 的驗證器來檢查您是否編寫了有效的 HTML / XHTML 文件!
常用的 DOCTYPE 宣告
HTML5
<!DOCTYPE html>
HTML 4.01 Strict
該DTD包含所有html元素和屬性,但不包括展示性和啟用的元素(如font),不允許框架Framesets。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
HTML 4.01 Transitional
該 DTD 包含所有 HTML 元素和屬性,包括展示性的和棄用的元素(比如 font)。不允許框架集(Framesets)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
HTML 4.01 Frameset
該 DTD 等同於 HTML 4.01 Transitional,但允許框架集內容。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
XHTML 1.0 Strict
該 DTD 包含所有 HTML 元素和屬性,但不包括展示性的和棄用的元素(比如 font)。不允許框架集(Framesets)。必須以格式正確的 XML 來編寫標記
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Transitional
該 DTD 包含所有 HTML 元素和屬性,包括展示性的和棄用的元素(比如 font)。不允許框架集(Framesets)。必須以格式正確的 XML 來編寫標記。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Frameset
該 DTD 等同於 XHTML 1.0 Transitional,但允許框架集內容。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.1
該 DTD 等同於 XHTML 1.0 Strict,但允許新增模型(例如提供對東亞語系的 ruby 支援)。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">