劉宗凡
日前,來自孟買的創(chuàng)意設(shè)計團隊Inventika Solutions為紀念喬布斯,利用HTML5和CSS技術(shù)制作了一款網(wǎng)頁版iPod播放器(http://inventikasolutions.com/demo/iPod/)(如圖1)。不僅是外觀酷肖第一代iPod,實際上這臺“iPod”是可以像真的iPod一樣操作的。
也許大家會覺得這個網(wǎng)頁并沒有什么非常神奇的地方。確實,如果我們用Flash做這樣一個網(wǎng)頁,是十分簡單的事情。但這個網(wǎng)頁沒有使用任何插件,是直接在網(wǎng)頁上繪圖的,這就只有HTML5才能做到。
如果你無法看到或不能完整看到上面的網(wǎng)頁,那也不用急,先讓我們來揭開HTML5的面紗。
● HTML5的來龍去脈
HTML意為超文本標記語言(HyperText Markup Language),是為網(wǎng)頁創(chuàng)建和其他可在網(wǎng)頁瀏覽器中看到的信息設(shè)計的一種標記語言。
1980年,Tim Berners-Lee為使世界各地的物理學(xué)家能夠方便地進行合作研究,創(chuàng)建了使用于其系統(tǒng)的HTML。Tim Berners-Lee設(shè)計的HTML以純文字格式為基礎(chǔ),可以用任何文本編輯器處理,最初僅有少量標記(TAG),易于掌握運用。隨著HTML使用率的增加,人們便不滿足只能看到文字。1993年,還是大學(xué)生的馬克·安德生在他的Mosaic瀏覽器加入標記,從此可以在Web頁面上瀏覽圖片。但人們認為僅有圖片還是不夠,希望可將任何形式的媒體加載到網(wǎng)頁上。因此HTML不斷地擴充和發(fā)展。W3C(World Wide Web Consortium,萬維網(wǎng)聯(lián)盟)于1997發(fā)布HTML4.0,被廣泛接受和使用,到現(xiàn)在已經(jīng)有15個年頭了。
HTML5是HTML的最新標準,目前仍在完善中。它的誕生得益于WHATWG(Web Hypertext Application Technology Working Group,超文本應(yīng)用技術(shù)工作組),這個組織中的成員認為,此前以文檔為中心的理念無法有效地滿足現(xiàn)代Web應(yīng)用的需要,HTML的改進應(yīng)以互聯(lián)網(wǎng)應(yīng)用為中心,并在未來的Web世界中扮演更重要的角色。HTML5的目標是取代1999年所制定的HTML4.01和XHTML1.0標準,以期能在互聯(lián)網(wǎng)應(yīng)用迅速發(fā)展的時候,使網(wǎng)絡(luò)標準達到符合當(dāng)代的網(wǎng)絡(luò)需求。W3C聲稱,將在2014年發(fā)布HTML5草案,正式標準將于2022年發(fā)布。
廣義論及HTML5時,實際包括了HTML5、CSS3、JavaScript以及新的瀏覽器API所包含的整個Web前端技術(shù)。它希望能夠減少瀏覽器對于需要插件的豐富性網(wǎng)絡(luò)應(yīng)用服務(wù)(plug-in-based rich internet application,RIA),如Adobe Flash、Microsoft Silverlight與Oracle JavaFX的需求,并且提供更多能有效增強網(wǎng)絡(luò)應(yīng)用的標準集。
2007年,喬布斯斷言拒絕Flash并預(yù)言HTML5時代來臨,IT行業(yè)也因此對HTML5產(chǎn)生了一股宗教熱情。HTML5有著許多出眾的特性,可以直接在網(wǎng)頁上繪圖、嵌入音視頻、實現(xiàn)信息互動,可以跨越iOS、Android等多個平臺,輕易地將網(wǎng)頁應(yīng)用轉(zhuǎn)換成桌面應(yīng)用……它儼然成了APP的終結(jié)者以及下一代移動技術(shù)的代名詞。國內(nèi)業(yè)界人士普遍認為,具有跨平臺特征的HTML5將是開發(fā)標準的一次技術(shù)性革命。
● HTML5與HTML4的重要區(qū)別
作為HTML4一個革命性的更新,HTML5具有一些非常重要的特性。
◇HTML5的CANVAS標簽將允許直接在網(wǎng)頁上用腳本繪圖。這是一個革命性的突破。這將使得我們能拋棄Flash和SliverLight等插件,直接顯示豐富多彩的圖像和動畫。而HTML4只能使用靜態(tài)圖片,也無法對圖片進行調(diào)整。
◇HTML5支持用戶直接在網(wǎng)頁上進行交互。Contenteditabl屬性允許你設(shè)定網(wǎng)頁的哪一部分可以編輯。我們不只是能在網(wǎng)頁上觀看視頻,而且可以和視頻進行交互。這是一種振奮人心的功能。
◇HTML5突破了其作為標記語言的界限,增加了很多頗具實用價值的API。例如,Web SQL Database API可以創(chuàng)建數(shù)據(jù)庫對象從而長期保留當(dāng)前會話下的數(shù)據(jù),為瀏覽器的離線工作掃清了道路。又如,F(xiàn)ile API可以使本地文件通過拖放的方式上傳至網(wǎng)站,甚至還提供了一個接口來關(guān)聯(lián)上傳數(shù)據(jù),從而提供顯示上傳進度和其他信息的方法。在這些API的共同作用下,無需客戶端和插件,完全基于Web頁面的應(yīng)用程序已經(jīng)指日可待。
◇HTML5擁有更加強大的圖像功能。不僅大大加強了矢量圖和位圖,還內(nèi)建了對3D技術(shù)的支持,以WebGL為代表的技術(shù)可以幫助HTML5提供硬件3D加速渲染,借助系統(tǒng)顯卡在瀏覽器里流暢地展示3D場景和模型。
◇HTML5支持離線存儲。所有的瀏覽器都有自己的緩存機制,但那些機制并不可靠而且難以控制。HTML5通過Application Cache接口解決了一些問題。這個技術(shù)顯然至少有三個好處:用戶可以離線訪問你的Web應(yīng)用;由于文件被緩存在本地,使得Web頁面加載速度提升了許多;離線應(yīng)用只加載被修改過的資源,因此大大降低了用戶請求對服務(wù)器造成的負載壓力。
◇HTML5新增加的audio和video標簽,使得音頻和視頻就會像今天的文本以及圖片一樣,成為任何網(wǎng)頁的標準部分。這意味著網(wǎng)頁不需要加載任何播放器就能播放聲音和視頻,這將大大減少瀏覽器的工作負擔(dān),并提高用戶的體驗。這個變化導(dǎo)致的結(jié)果之一是,瀏覽器可以擺脫很多插件而獨立運行。
● HTML5引發(fā)的競爭
1.技術(shù)之爭
雖然HTML5令人狂熱,但我們不得不看到,普及推廣HTML5并非一帆風(fēng)順。在這條大路上,第一個攔路虎就是Flash。到底是Flash技術(shù)優(yōu)勝,還是HTML5更好?目前還不能得出定論。
Flash在過去的13年中版本從1.0發(fā)展到現(xiàn)在的11.5,逐漸成了互聯(lián)網(wǎng)上最流行的RIA技術(shù)。在Web交互體驗、音頻、視頻、游戲、廣告、企業(yè)Rich UI等領(lǐng)域,都能看到Flash的身影。目前電腦上的瀏覽器安裝了Flash插件的占97%以上,占有率高高在上。并且Flash支持后臺自動升級,用戶可以隨時享受到Flash創(chuàng)新帶來的體驗,沒有任何障礙。從圖2,我們還可以看出Flash在不斷進行創(chuàng)新,對于HTML5帶來的富媒體支持,F(xiàn)lash同樣勢均力敵。因此,到底鹿死誰手,并不是我們想象得那么簡單。隨著HTML5在Open Web下的進化,加入了這些類型的功能,F(xiàn)lash有絕佳的機會和時間在重復(fù)的功能上做出改進,更加強化自己在富媒體領(lǐng)域的針對性地位。
HTML5基于Open Web的理念是完美的,但是Open的統(tǒng)一是要付出昂貴代價的。HTML5的交付和統(tǒng)一之路更加漫長,這不僅僅是技術(shù)的開放、標準更新?lián)Q代的過程,更包含了令人匪夷所思的商業(yè)博弈在其中。
HTML5的成功尚需時日,F(xiàn)lash的占有率仍然高高在上。短時間內(nèi)誰也無法奈何了誰。這下可辛苦了互聯(lián)網(wǎng)企業(yè),F(xiàn)lash與HTML5的爭奪讓他們已經(jīng)開始做兩手準備?,F(xiàn)在最常用的辦法是網(wǎng)站會自動識別瀏覽器UA,專門為蘋果公司的設(shè)備提供一個H.264格式的視頻,其余的設(shè)備則顯示一個Flash播放器,里面也可以播放這個H.264格式的視頻。這種狀況將會長期存在下去,只要桌面級Flash不死,就會有大量的用戶,因為無論是Flash還是HTML5,用戶需要的都只是結(jié)果,而不是中間的過程。
當(dāng)然,在移動互聯(lián)網(wǎng)領(lǐng)域,HTML5與Flash的爭奪已經(jīng)有了結(jié)果。蘋果的IOS系統(tǒng)從一開始就不支持在線Flash,Android從4.1版開始,也拋棄了Flash,微軟的WMP系統(tǒng)也不再支持Flash。Adobe公司宣稱已經(jīng)放棄繼續(xù)對移動互聯(lián)網(wǎng)的支持。這是HTML5目前取得的唯一勝利。移動平臺HTML5得以戰(zhàn)勝Flash,主要是因為蘋果等廠商對Flash的強硬態(tài)度,在移動平臺上用戶也沒有太多的選擇。HTML5將會逐漸取代Flash,未來HTML5將會得到更長足的發(fā)展。目前Youtube、Youku等網(wǎng)站都已經(jīng)開始支持HTML5,使用Andorid手機的用戶也大可不必擔(dān)心,未來視頻仍然可以觀看,而使用iPhone的用戶同樣可以使用。
可以肯定的是,如果在PC端主流瀏覽器沒有統(tǒng)一支持HTML5編碼,普及性將無法和Flash相比。不管未來的走向到底如何,無疑將會引發(fā)一場硝煙彌漫的惡戰(zhàn)。
2.標準之爭
負責(zé)制定HTML標準的兩家機構(gòu)是WHATWG和W3C。當(dāng)年W3C因為將重點放在XML和XHMTL上,對未來HTML標準編制緩慢,因此WHATWG應(yīng)運而生。當(dāng)時,絕大多數(shù)用戶都希望使用HTML標準,而且希望能夠改善這一標準。所以2004年,WHATWG就開始負責(zé)編寫HTML標準。2007年W3C接納WHATWG團隊編寫的HTML5標準,并成立了新的HTML工作團隊。
近來,W3C和WHATWG在HTML5標準上的分歧越來越大。WHATWG專注于發(fā)展標準的HTML5格式及相關(guān)技術(shù),并且可以不斷地修正標準中的錯誤。而W3C則想根據(jù)自己的開發(fā)進程制作出“標準版”HTML5標準,頒布之后不容許更改,錯誤也無法修正。所以W3C和WHATWG決定分離,各自對自己的HTML5標準負責(zé)。這也意味著今后將會出現(xiàn)兩個版本的HTML5,即“標準版”和“l(fā)iving”版(活標準)。
上面這段WHATWG官網(wǎng)上的說明,表明制定HTML5標準的兩家機構(gòu)已經(jīng)分道揚鑣,將各自制定出自己的HTML5標準。到底兩個標準有什么區(qū)別呢?
通俗點說,W3C想要的HTML5是單一的、確定的標準。而WHATWG所開發(fā)的HTML5更像是一個“動態(tài)的”HTML5:WHATWG的HTML5標準不會固定下來,它會經(jīng)常性地添加新特性或是進行改進。而各個瀏覽器和程序員需要做的就是跟上WHATWG的節(jié)奏。由于擺脫了W3C的程序步驟,WHATWG的“l(fā)iving”標準制定很可能會提速。
2011年1月,WHATWG的Ian Hickson為Web標準描述了一個新的發(fā)展模式:WHATWG將集中于演進“l(fā)iving”(活)標準,而W3C堅持使用傳統(tǒng)的數(shù)字編號系統(tǒng)定義靜態(tài)的“snapshots”(快照)。Hickson稱,W3C的標準一旦制定后,即便出現(xiàn)錯誤也無法修正。但雙方各有優(yōu)勢,WHATWG 不斷地更新保證用戶使用最新的體驗,而W3C的標準的優(yōu)勢體現(xiàn)在專利授權(quán)、合同條款等方面。
在HTML5的視頻格式標準上,Google和蘋果發(fā)生了激烈的爭執(zhí)。Google認為蘋果所支持的MPEG視頻協(xié)議核心技術(shù)為蘋果一家所把持,商業(yè)化程度這么高的東西絕然不能加入HTML5的開放標準中。于是Google在Youtube中大力推廣WebM格式,和蘋果針鋒相對。WebM影片格式是以 Matroska(即MKV)容器格式為基礎(chǔ)開發(fā)的新容器格式,里面包括了VP8 影片軌和Ogg Vorbis音軌,其中Google將其擁有的VP8視頻編碼技術(shù)以類似BSD授權(quán)開源,Ogg Vorbis本來就是開放格式。
HTML5標準的分裂,讓它的未來又充滿變數(shù)。
3.瀏覽器之爭
HTML5的普及,另一個攔路虎是瀏覽器。如果大量瀏覽器不支持HTML5,則HTML5的普及更為艱難。互聯(lián)網(wǎng)領(lǐng)域交鋒最激烈的戰(zhàn)場就是瀏覽器市場。微軟、谷歌、蘋果,還有一眾大大小小的公司的不同瀏覽器被卷入這場似乎無休止的戰(zhàn)爭當(dāng)中,誰都想從中分一杯羹。占據(jù)了瀏覽器的橋頭堡,就扼住了互聯(lián)網(wǎng)的入口,具有極為重要的意義。360通過瀏覽器的優(yōu)勢,自推搜索引擎能在百度虎口奪食,證明了瀏覽器的威力巨大。
現(xiàn)在,對HTML5的兼容程度成為了衡量瀏覽器優(yōu)劣的一個重要指標。特別是移動瀏覽器,更是已經(jīng)進入跑分競爭。有些瀏覽器廠商甚至為了單純得高分而犧牲用戶體驗,陷入了為分數(shù)而分數(shù)的怪圈。如果你想知道自己的瀏覽器對HTML5的兼容性,可以打開網(wǎng)站http://html5test.com/進行測試。網(wǎng)站將給出當(dāng)前瀏覽器能得到的分數(shù)。
截止到2012年10月10日,五大瀏覽器最新版本在HTML5測試中所取得的分數(shù)如下表所示??梢钥闯?,Chrome對HTML5的兼容性是最好的。IE9也在緊緊追趕之中。
在全球范圍內(nèi)來看,Chrome在今年5月市場份額首次超越IE并且在接下來的時間保持領(lǐng)先,F(xiàn)irefox、Safari也分別占有23%、8%左右的份額。在IE中,IE9也逐漸普及,各個優(yōu)秀的瀏覽器對HTML5提供了良好的支持。IE占統(tǒng)治地位的情景將成為明日黃花,HTML5將在瀏覽器市場掀起波瀾。雖然離HTML5正式標準的發(fā)布還非常遙遠,但伴隨著HTML5標準的普及,或?qū)碚麄€瀏覽器行業(yè)的重新洗牌。
但是對我國來說,情況就不是那么樂觀了。圖3是我國今年9月分的瀏覽器市場份額情況。可以看出IE以近70%的份額占據(jù)了絕對的優(yōu)勢。更為遺憾的是,以Windows XP和Win 7自帶的IE6、IE8又占近60%的份額,加上以IE為核心的360瀏覽器、搜狗瀏覽器及Maxthon等,起碼有八成以上的瀏覽器無法正常瀏覽HTML5網(wǎng)頁。IE6從21世紀初發(fā)布開始,十年如一日,至今仍在統(tǒng)治著人們?yōu)g覽互聯(lián)網(wǎng)的窗口,新型瀏覽器在中國舉步維艱。瀏覽器直接制約了HTML5在我國的推廣普及。
當(dāng)然,在國際巨頭紛紛鏖戰(zhàn)瀏覽器市場時,我國也開始重視瀏覽器的研究。2012年4月12日,工信部網(wǎng)站公布2013年“核高基”國家科技重大專項課題。面向移動互聯(lián)網(wǎng)智能終端的瀏覽器研發(fā)與產(chǎn)業(yè)化成為課題之一,成功入選企業(yè)有可能獲得6900萬元中央財政資金支持。根據(jù)最新的課題申報指南,國家將支持兩家相關(guān)企業(yè)進行移動瀏覽器的研發(fā)及產(chǎn)業(yè)化,其中一家企業(yè)需要研發(fā)出支持移動智能終端的HTML5瀏覽器;另一家企業(yè)則要研發(fā)出安全可控的跨平臺瀏覽器。國家的重視和扶持,能不能讓我國自主研發(fā)的瀏覽器也在HTML5的大潮中占據(jù)一席之地?我們且拭目以待。
● HTML5應(yīng)用的崛起
正是因為HTML5具有如此多激動人心的優(yōu)勢,許多公司都紛紛押注HTML5。亞馬遜用HTML5開發(fā)了一款基于網(wǎng)頁的應(yīng)用程序Kindle Cloud Reader,規(guī)避蘋果對在iPhone和iPad上銷售內(nèi)容的相關(guān)規(guī)定。
“憤怒的小鳥”開發(fā)商Rovio Entertainment為該游戲開發(fā)了HMTL5版,無需安裝應(yīng)用程序就能玩。網(wǎng)絡(luò)電臺Pandora Media的網(wǎng)站也已用HMTL5重新設(shè)計,這使打開速度更快,而且更方便用戶追蹤其他用戶的收聽愛好。
據(jù)跟蹤互聯(lián)網(wǎng)技術(shù)的科技博客binvisions報道,今年第三季度最受歡迎的100個網(wǎng)站中有34%采用了HTML5。
國內(nèi)因為落后的瀏覽器占統(tǒng)治地位,在HTML5的布局上還處于預(yù)熱之中。比較成熟的應(yīng)用只有互聯(lián)網(wǎng)巨頭騰訊開發(fā)的Q+(web.qq.com)。Q+利用HTML5的離線緩存特性,開發(fā)了數(shù)款游戲和應(yīng)用,可以在斷開網(wǎng)絡(luò)時使用。在移動互聯(lián)網(wǎng)方面,國內(nèi)領(lǐng)先的UC瀏覽器提供了對HTML5標準強大的支持,UC應(yīng)用中心是目前國內(nèi)移動互聯(lián)領(lǐng)域最大最全的WebAPP應(yīng)用平臺,收錄的HTML5應(yīng)用數(shù)量已經(jīng)超過了600款,活躍用戶超過3000萬,圖4為UC瀏覽器的應(yīng)用中心截圖。
過去,瀏覽器只負責(zé)網(wǎng)頁基本內(nèi)容、格式的渲染和基礎(chǔ)腳本(如JavaScript)的執(zhí)行,更高層次的需求,如視頻播放、游戲、聲音效果等由第三方插件或者專門的軟件來完成。但是,網(wǎng)絡(luò)技術(shù)發(fā)展的大勢所趨是瘦客戶端與云計算的組合,在這個趨勢下,更精簡的客戶端軟件和更強大的瀏覽器能力已經(jīng)成為業(yè)界的訴求。所以,HTML5的誕生并非偶然,而是時代的選擇。
HTML5之所以會成為業(yè)界的焦點并成為HTML發(fā)展的必由之路,正是因為它再次夯實了HTML作為Web根基的地位。它拋開了臃腫的插件,強化了瀏覽器對HTML的理解能力,不僅是對用戶瀏覽體驗的革新,也是對網(wǎng)絡(luò)瀏覽器技術(shù)比拼重新進行發(fā)牌。
HTML5的確極具價值,若HTML5標準得以確立,對互聯(lián)網(wǎng)來說無疑是大大的福祉。然而,F(xiàn)lash、瀏覽器和各大巨頭之間的廝磨直接拖緩了HTML5的部署步伐。HTML5的未來,我們可以用一經(jīng)典語錄來說明:前途是光明的,道路是曲折的。