> HTML5在標(biāo)簽上有了很多改變。作為構(gòu)建互聯(lián)網(wǎng)的基礎(chǔ)標(biāo)準(zhǔn)之一,HTML很少升級,最近的一次升級是1999年12月發(fā)布的HTM"/>
文|樹子
>> HTML5在標(biāo)簽上有了很多改變。
作為構(gòu)建互聯(lián)網(wǎng)的基礎(chǔ)標(biāo)準(zhǔn)之一,HTML很少升級,最近的一次升級是1999年12月發(fā)布的HTML 4.01。從那以后,對HTML進(jìn)行渲染和表現(xiàn)的瀏覽器市場發(fā)生了翻天覆地的變化。Netscape倒在了IE的強(qiáng)權(quán)之下,IE一度成為市場唯一的主流瀏覽器產(chǎn)品,從IE5到IE6、IE7和IE8,即將推出IE9。隨后Mozilla從Netscape倒下的廢墟中涅磐,F(xiàn)irxfox一飛沖天,從IE手中又搶回了近20%的市場份額。與此同時(shí),蘋果、Opera和Google各自推出自己的瀏覽器。在這其中,HTML語言并沒有出現(xiàn)本質(zhì)的變化,除了差點(diǎn)被拋棄且目前還只是草案的HTML5。
HTML 5草案的前身名為Web Applications 1.0,2004年由WHATWG提出,2007年被W3C接納。2008年1月22日,第一份正式草案發(fā)布。WHATWG是2004年由Apple、Mozilla基金會和Opera的程序員創(chuàng)建的。在此之前,W3C一直將其直屬的XHTML作為下一代HTML標(biāo)準(zhǔn)。2009年底W3C表示,2009年12月31日過期的XHTML 2工作小組合同不會再更新,這意味著XHTML 2將不會成為W3C的標(biāo)準(zhǔn)推薦。換句話說,趕緊看看HTML5是什么吧。
如果要用一個(gè)詞來說明HTML5與HTML之前版本的最大區(qū)別,那就是“動態(tài)”。因?yàn)楫?dāng)時(shí)的技術(shù)限制,1999年推出的HTML 4.01是個(gè)“靜態(tài)”的語言標(biāo)準(zhǔn),當(dāng)時(shí)被用來顯示文字及圖片等鏡頭效果,因此當(dāng)技術(shù)發(fā)展到需要大量顯示動態(tài)效果如視頻和音頻之后,HTML只能采取將內(nèi)容與各個(gè)參數(shù)進(jìn)行捆綁后從服務(wù)器獲取信息,再傳遞給相關(guān)用戶。例如我們現(xiàn)在經(jīng)常使用的視頻分享網(wǎng)站,就是通過Flash和流媒體的標(biāo)記來實(shí)現(xiàn)在線視頻的播放。
隨著用戶對互聯(lián)網(wǎng)數(shù)據(jù)需求的增加,程序員希望將視頻及音頻嵌入到網(wǎng)頁的工作不再是一種特殊的技能,HTML應(yīng)該可以直接支持這些元素,并且以一種易于使用和控制的方式處理和精確控制音、視頻內(nèi)容。同時(shí),HTML的結(jié)構(gòu)和標(biāo)記也應(yīng)該針對新的互聯(lián)網(wǎng)應(yīng)用作出改變,使網(wǎng)頁制作者可以利用瀏覽器完成更多原來需要本地應(yīng)用程序才能完成的功能。
為了增強(qiáng)網(wǎng)站的靈活性和互動性,HTML5引入了更多的特性,包括控制APIs、多媒體、結(jié)構(gòu)和語義等,其中大部分是在1999年HTML最后一次升級之后所產(chǎn)生的需求。
HTML5首先對結(jié)構(gòu)和控制部分進(jìn)行了修改,特別是對很多代碼進(jìn)行了重定義,讓用戶更有效地控制顯示在屏幕上的數(shù)據(jù)以及組織HTML代碼中的內(nèi)容。HTML5包含了對視頻和音頻兩個(gè)新元素的支持,在HTML5環(huán)境下不需要借助第三方的支持就可以直接對視頻元素使用自動播放、播放控制、寬高度和循環(huán)播放等屬性。同時(shí),對RIA(Rich Internet Application,富互聯(lián)網(wǎng)應(yīng)用系統(tǒng))也可以直接在HTML5框架下實(shí)現(xiàn),而不需要使用諸如Flash、Java以及Silverlight等技術(shù)。
更深層次的改變體現(xiàn)在HTML5對CSS3的支持上。CSS技術(shù)最初出現(xiàn)在1997年,目前HTML5使用的是第3個(gè)主要版本。CSS3向前兼容CSS1和CSS2,并引入了許多用戶可以在頁面上使用的新設(shè)計(jì)工具,其中包括嵌入式字體、陰影和動畫以及可視化交互元素。
雖然到目前為止,HTML5還只是個(gè)草案,但這絲毫不能阻止應(yīng)用程序所有者和瀏覽器開發(fā)商對HTML5的熱情。
IBM軟件小組的新興技術(shù)副總裁Rod Smith和IBM艾曼登研發(fā)中心的研究員Stefan Nusser向外界介紹了6個(gè)技術(shù)項(xiàng)目。Smith表示,IBM這些計(jì)劃的最終目標(biāo)是隨著網(wǎng)絡(luò)技術(shù)的發(fā)展讓人們的工作更有效率。為了實(shí)現(xiàn)這個(gè)目標(biāo),這些技術(shù)主要集中在推進(jìn)在線合作,并解決伴隨合作而出現(xiàn)的問題,比如保護(hù)隱私性。在這其中,IBM的程序員使用了一些仍在開發(fā)中的HTML5特性。另一個(gè)展示的項(xiàng)目CoScripter則是一個(gè)Firefox插件,可以讓用戶記錄、自動執(zhí)行以及共享在Firefox中完成的動作。
>> HTML也將被廣泛應(yīng)用于手機(jī)平臺上。
除了IBM,也有其他網(wǎng)站對HTML5進(jìn)行了預(yù)熱。2009年12月,Khronos聯(lián)盟組織發(fā)布了WebGL標(biāo)準(zhǔn)的草案版本,標(biāo)準(zhǔn)的草案版本中使用了HTML5所包含的技術(shù)對OpenGL ES 2.0圖像進(jìn)行渲染,這樣就可以在不使用插件的情況下將網(wǎng)頁3D化。WebGL標(biāo)準(zhǔn)不僅可以簡化開啟顯卡3D網(wǎng)頁硬加速功能的操作步驟,而且還規(guī)定了一套適合網(wǎng)頁使用的3D圖形接口界面,支持腳本化運(yùn)行,并提供顯卡性能測試工具。2010年1月,YouTube宣布其網(wǎng)站的視頻將支持HTML5標(biāo)準(zhǔn),不需要安裝其他插件就可以使用支持HTML5的瀏覽器觀看在線視頻。
瀏覽器方面,2009年6月蘋果發(fā)布了最新的瀏覽器Safari 4,這一瀏覽器支持HTML5標(biāo)準(zhǔn)和高級CSS特效,在Acid 3標(biāo)準(zhǔn)測試中可以得到滿分。在此之前,Opera、Chrome和Firefox都支持了HTML5。微軟也在最近表示,考慮在IE9中加入對HTML5的支持。
除了PC機(jī)平臺,手機(jī)也將成為HTML5的重要戰(zhàn)場。HTML5不用安裝任何插件就可以瀏覽和處理多媒體信息的特性非常適合手機(jī)這樣較低性能的移動平臺。目前智能手機(jī)的兩個(gè)重要操作系統(tǒng)平臺——蘋果iPhone和谷歌Android所使用的手機(jī)瀏覽器都是基于WebKit的分支項(xiàng)目,因此完全支持HTML5。
不過,雖然HTML5能夠帶來更多的先進(jìn)技術(shù),讓我們看到10年后的互聯(lián)網(wǎng)應(yīng)用的一個(gè)側(cè)面,但是對于Web開發(fā)人員來說,HTML5距離大規(guī)模應(yīng)用還很遠(yuǎn)。
2008年9月,HTML5標(biāo)準(zhǔn)的組織者之一Ian Hickson曾經(jīng)為HTML5的推出列出了一個(gè)時(shí)間表。他假定各個(gè)瀏覽器開發(fā)商會在HTML5處于最后起草階段時(shí)開始全面支持HTML5,最終的正式標(biāo)準(zhǔn)直到2022年才會發(fā)布。這就是HTML5面臨的最大窘境。誰知道13年后的互聯(lián)網(wǎng)標(biāo)準(zhǔn)是不是還有HTML的一席之地?如果連HTML都退出了歷史舞臺,那么HTML5又有什么價(jià)值?當(dāng)然,Web開發(fā)人員現(xiàn)在已經(jīng)可以使用一些HTML5的特性,盡管這份標(biāo)準(zhǔn)還只是草稿而已。
不過,技術(shù)的發(fā)展經(jīng)常會超乎創(chuàng)造者的想象。時(shí)隔2年之后,越來越多的瀏覽器開始支持或部分支持HTML5的標(biāo)準(zhǔn)草稿,Google在各個(gè)場合力推HTML5,因?yàn)镠TML5可以讓W(xué)eb程序更快更實(shí)用。Opera、蘋果和Mozilla也紛紛表態(tài)。但即使如此,HTML5還有一些問題需要解決,比如對視頻格式的支持,Mozilla內(nèi)置支持Ogg Theora標(biāo)準(zhǔn),Safari和Chrome則支持H.264標(biāo)準(zhǔn),前者沒有授權(quán)和專利限制,后者的使用則廣泛得多。HTML5必須首先統(tǒng)一合作伙伴之間的標(biāo)準(zhǔn)。