HTML4.01中規範
首先咱們先肯定一件事兒,咱們如今學習的是HTML4.0.1這個版本,這個版本是IE6開始兼容的。HTML5是IE9開開始兼容的。可是IE六、七、8這些瀏覽器還不能過早的淘汰,因此這幾年網頁仍是應該用HTML4.01來製做。現在,手機、移動端的網頁,就可使用HTML5了,由於其兼容性更高。css
說個題外話,html1 至 html3 是美國軍方以及高等研究所用的,並未對外公開。html
HTML4.01裏面有兩大種規範,每大種規範裏面又各有3種小規範。因此一共6種規範(見下面):瀏覽器
HTML4.01裏面規定了普通和XHTML兩大種規範。框架
HTML以爲本身有一些規定不嚴謹,好比,標籤是否能夠用大寫字母呢?
<H1></H1>
ide
因此,HTML就以爲,把一些規範嚴格的標準,又制定了一個XHTML1.0。在XHTML中的字母X,表示「嚴格的」。post
XHTML:Extensible Hypertext Markup Language,可擴展超文本標註語言。
XHTML的主要目的是爲了取代HTML,也能夠理解爲HTML的升級版。
HTML的標記書寫很不規範,會形成其它的設備(ipad、手機、電視等)沒法正常顯示。
XHTML與HTML4.0的標記基本上同樣。
XHTML是嚴格的、純淨的HTML
總結一下,HTML4.01一共有6種DTD,說白了,HTML第一行語句一共有6種:學習
下面對上圖中的三種小規範進行解釋:spa
-
strict:表示「嚴格的」,這種模式裏面的要求更爲嚴格。這種嚴格體如今哪裏?有一些標籤不能使用。
好比,u標籤,就是給一個本文加下劃線,可是這和HTML的本質有衝突,由於HTML只能負責語義,不能負責樣式,而u這個下劃線是樣式。因此,在strict中是不能使用u標籤的。
那怎麼給文本增長下劃線呢?從此的css將使用css屬性來解決。
那麼,XHTML1.0更爲嚴格,由於這個體系自己規定好比標籤必須是小寫字母、必須嚴格閉合標籤、必須使用引號引發屬性等等。code -
Transitional:表示「普通的」,這種模式就是沒有一些別的規範。htm
-
Frameset:表示「框架」,在框架的頁面使用。
在sublime輸入的html:xt,x表示XHTML,t表示transitional。
HTML5中的規範
極大的簡化了DTD,也就是說HTML5中就沒有XHTML了(W3C本身打臉了):
<!DOCTYPE html>
常見聲明格式
HTML 5
<!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">