萬維網聯盟(w3c)發布了html 5規格說明書的草稿 ,這是自html 4在十多年前發布以來的第一個主要的修訂版.在這期間,隨著開發者逐漸將自己的應用程序移植到web之上,它已經從一個主要的靜態媒體發展為互動的應用程序,具有豐富的媒體內容.html 5的目的就是要反映出這樣的變化.
新增的特性充分地考慮了應用程序開發人員,因此,html 5引入了大量的新的javascript api.可以利用這些內容與對應的html元素相關聯,它們包括:
1/二維繪圖api,可以用在一個新的畫布(canvas)元素上以便呈現圖像、游戲圖形或者其他運行中的可視圖形.
2/一個允許web應用程序將自身注冊為某個協議或mime類型的api.
3/一個引入新的緩存機制以支持脫機web應用程序的api.
4/一個能夠播放視頻和音頻的api,可以使用新的video和audio元素.
5/一個歷史紀錄api,它可以公開正在瀏覽的歷史紀錄,允許頁面在加上它之后更好的在ajax應用程序中實現對后退按鈕的支持.
6/跨文檔的消息傳遞,它提供了一種方式,使得文檔可以互相通信而不用考慮它們的源域,7/在某種程度上,這樣的設計是為了防止跨站點的腳本攻擊.
8/一個支持拖放操作的api,用它可以與draggable特性相關聯.
9/一個支持編輯操作的api,用它可以與一個新的全局contenteditable特性相關聯.
10/一個新的網絡api,它支持web應用程序在本地網絡上互相通信,并在它們的源服務器上維持雙向的通信.
使用javascript api的鍵/值對實現客戶端的持久化存儲,同時支持嵌入的sql數據庫.
服務器發送的事件,通過它可以與新的事件源(event-source)元素關聯,新的事件源元素有利于與遠程數據源的持久性連接,而且極大地消除了在web應用程序中對輪詢的需求.
同時,html 5還引入了許多新的表示元素以支持普通的頁面組件,例如headers(頁眉),footers(頁腳),figures(插圖),dialog(對話, 用于標記會話)以及navigation(導航).此外,還有一個新的datagrid元素支持交互式的表與樹,一個為組合框提供的datalist元素,以及一個progress特性,它能夠展現一個運行時間長的任務的完成情況.同時,還增加了支持rss種子的頁面標簽.
針對表單,input元素的type類型包含了對日期、時間、email和urls的全新支持,這樣一來,瀏覽器就能夠提供用戶界面元素,例如一個日歷的日期選擇器或者與用戶地址薄的集成,同時還能夠將數據按照一個定義好的格式提交給服務器.
html 5還放棄了對一些眾所周知的特性的支持.其中最引人注目的就是放棄了對框架(frames)的支持,因為長期以來框架均被認為破壞了網頁的可訪問性與可用性.值得注意的是,即使瀏覽器完全支持html 5標準,它仍然會繼續支持這些被放棄的特性,因為對html舊版本的支持會持續多年.
html 5在w3c的html工作組的指導下進行開發,該工作組成立于2007年3月.工作組的運營是完全公開的,在近500名參與者中包括了來自apple、 google、ibm、microsoft、mozilla foundation、nokia與opera的成員.
“毫無疑問, html是一個非常重要的標準”,第一個html版本的作者,w3c理事tim berners-lee說道.“我很高興地看到開發者社區,包括瀏覽器提供商一起致力于創建web的最佳發展軌跡.要整合這么多人的想法是一個艱巨的任務,我們面臨的挑戰就是要找到創新與守成、理想與務實之間的平衡.”
html 5將逐漸替代html 4,但是html 5規格說明書的最終確定依然任重而道遠.目前的計劃是在2009年期間初步將其作為候選以推薦使用,然后在2010年9月作為最終的正式版本而被推行.
作者 charles humble
譯者 張逸