HTML5標準制定完成:瀏覽器大戰能消停嗎?
昨天,萬維網聯盟(W3C)宣布,經過將近8年的艱辛努力,HTML5標準規范終于最終制定完成并已公開發布。
狹義上,HTML5是HTML的第五個版本。HTML的全稱是超文本標記語言(HyperText Markup Language),由萬維網的***蒂姆·伯納斯·李設計,是為創建網頁而設計的一種標記語言。HTML利用標簽來描述內容的語義,使計算機能夠通過識別標簽來正確處理內容。
廣義上,HTML5是HTML5、CSS3、Javascript 2.0的統稱,因為對于現在的互聯網開發而言,這三者是密不可分的。HTML用于描述內容,CSS用于定義樣式,Javascript用于實現功能。
HTML是互聯網的基石,目前互聯網上所有的網頁都是用HTML寫成的。但是HTML標準的演化速度卻遠遠跟不上互聯網的發展。事實上,上一個HTML標準HTML 4.01發布于1999年12月24日,已經嚴重阻礙了互聯網的發展。
2004年,由Firefox、Opera、Apple、Google四大瀏覽器廠商組成的網頁超文本技術工作小組(Web Hypertext Application Technology Working Group),即WHATWG,宣布制定下一代HTML標準,即HTML5。而當時的萬維網聯盟(W3C)正在發展在XML和HTML基礎上設計的XHTML。
于是,W3C和瀏覽器廠商的***次大戰開始。互聯網的未來究竟是由標準組織W3C決定還是由瀏覽器廠商決定?這場大戰的決定性因素在于開發者們站在哪一邊。結果很明顯,開發者們當然會站在瀏覽器那邊,畢竟瀏覽器是普通用戶接觸互聯網的唯一途徑。W3C于2007年接納了WHATWG的HTML5草案,并成立了新的HTML工作團隊。
然而,在2012年,W3C和WHATWG再度分道揚鑣。而兩者的分歧在于WHATWG 集中于演進“living”標準,而 W3C 堅持使用傳統的數字編號系統定義靜態的“snapshots”。 WHATWG希望構建互聯網的***一個標準,即一個隨著互聯網發展不斷更新的HTML5標準。他們認為W3C的HTML5標準一旦制定完成,即便出現錯誤也無法修正。而且他們認為W3C的標準制定模式太過復雜,每一代標準的制定時間過長,不符合互聯網的發展速度。
所以,HTML5現在有兩個標準,一個由W3C制定,一個由WHATWG制定。這會導致W3C和瀏覽器廠商的第二次大戰嗎?
當然不會,對于瀏覽器廠商來說,贏得瀏覽器之戰比HTML5標準更重要。自從Google的Chrome重新掀起瀏覽器間的大戰之后,每一家瀏覽器都在根據自己的情況支持HTML5標準,每一家瀏覽器的廣告都在吹噓自己對HTML5標準的支持。
所以,HTML5的標準已經成為了既成事實,W3C的HTML5標準只是對這個既成事實的官方認證而已。
那么,既然有了HTML5的官方標準,瀏覽器大戰總該消停了吧。事實上,這場大戰依然在延續,而開發者們依然需要為各大瀏覽器適配網頁。
舉例來說,HTML5標準設計了<video>標簽,使得瀏覽器可以不借助Flash直接播放視頻文件。但是,HTML5標準卻沒有規定瀏覽器支持的視頻文件格式。現在,Firefox主推Ogg,Chrome主推WebM,Safari主推H.264。也就是說,開發者如果要使用<video>標簽,需要準備多種格式的視頻文件。好消息是現在似乎H.264占據了上風。
一次編寫,到處運行(Write once, Run anywhere)是每一個程序員的夢想。當年的Java沒有做到,原本程序員們指望Web標準能夠做到。然而事實上是,只要瀏覽器大戰沒有消停,HTML5也做不到。