前言
HTML 5如同一場革命,正在Web2.0后時代轟轟烈烈的進行著。
HTML 5是什么,無須我在這里贅述了。對于HTML 5的革新,按我的理解,可以總結為語義明確的標簽體系、化繁為簡的富媒體支持、神奇的本地數據存儲技術、不需要插件的富動畫(canvas)、強大的API支持。總之,HTML 5讓人機交互,人網交互變得更加舒適,貼合用戶。以往對富媒體應用與本存儲的支持乏力也不再是瀏覽器的切膚之痛。將Web從內容平臺推向標準化的應用平臺,并一統各在平臺陣營的標準,才是HTML 5革命的初衷。
本文,我就拋磚引玉,闡述HTML 5的革新之一:語義更明確簡潔的結構。
從”頭”說起
一個標準的XHTML頭部代碼應該是這樣:
你能記住嗎?你會去死記硬背嗎?當然不會!我們只需要機械的復制粘貼即可。
再看看一個標準的HTML 5頭部是如何的:
孰繁孰簡,就不用我說了。是的,HTML 5的頭部可以如此簡單,可以輕易的記住!并且,可以忽略大小寫,引號以及最后一個尖括號前的反斜線。
為什么可以如此松散?其實,如果把XHTML當成text/html發送,瀏覽器一樣可以很好的解析,瀏覽器并不在乎代碼的語法。所以,HTML 5是形而上的,它可能會破壞原有的一些標準,但仍可在瀏覽器中很好的表現。
當然,為了團隊協助與后續維護的方便,我們還是應該統一一種你喜歡的風格的寫法,比如:
另外,HTML 5雖然目前并不為所有瀏覽器所支持,但這個能省去100多字節(對于日PV百萬級以上的站點,能省下不少的流量哦)的頭部已可以完美的兼容了。如果你對瀏覽器解析模式有研究的話,你應該知道,頁面在沒有定義doctype的情況下會觸發怪異模式,而只要定義了<!doctype html>瀏覽器就可以在標準模式下解析頁面,而不需要指定某個類型的DTD。