HTML 5 是超文本置標(biāo)語言下一個(gè)重要版本,HTML 自1999年發(fā)布 HTML 4.01 以來,其開發(fā)一直處于停頓狀態(tài),而1999年至今正好是 Web 飛速發(fā)展的時(shí)間,現(xiàn)在的 HTML 版本已經(jīng)無法適應(yīng)現(xiàn)在的 Web 內(nèi)容與應(yīng)用。HTML 5 旨在提高 HTML 的交互行,支持當(dāng)前多樣的,復(fù)雜的 Web 內(nèi)容。同時(shí),它也會(huì)解決 HTML 4 Web 應(yīng)用功能上的欠缺。
一點(diǎn)歷史背景
HTML 5 的討論開始于2003年,當(dāng)時(shí),html5code.net' title='html5模板網(wǎng)'>W3C 對由 html5code.net' title='html5模板網(wǎng)'>Web Hypertext Application Technology Working Group (WHATWG) 開發(fā)的 HTML 5 草案表示出興趣,WHATWG 創(chuàng)始于2004年,由蘋果,Mozilla 基金會(huì),以及 Opera 公司的 代表組成。此后,html5code.net' title='html5模板網(wǎng)'>W3C HTML Working Group 于2007年成立并著手開發(fā) HTML 5。目前,開發(fā)工作仍在進(jìn)行中,并將于2012年向 W3C 提交初步意見,不過現(xiàn)在已經(jīng)有不少瀏覽器部分支持 HTML 5。本文介紹 HTML 5 的5大令人激動(dòng)的新功能。
1. 一些幫助我們描述內(nèi)容的新標(biāo)簽
Web 內(nèi)容的多樣性讓 HTML4 力不從心,在描述一個(gè)網(wǎng)頁時(shí),HTML4 如下 表現(xiàn):
HTML 5 將如下表現(xiàn):
這樣,瀏覽器就知道一個(gè)網(wǎng)頁的各個(gè)部分各代表什么,比如 <nav> 部分是導(dǎo)航,而 <article> 部分是主要內(nèi)容 。除了更漂亮的 代碼與語義標(biāo)簽,這種改變還帶來更多好處,比如,搜索引擎可以更準(zhǔn)確地知道一個(gè)網(wǎng)頁的哪部分內(nèi)容更重要。關(guān)于 HTML 5 新標(biāo)簽,html5code.net' title='html5模板網(wǎng)'>IBM有詳細(xì)的論述。
2. 改進(jìn)的 Web 表單處理
HTML 5 推出 html5code.net' title='html5模板網(wǎng)'>Web Forms 2.0,為開發(fā)提供許多新選項(xiàng)和新功能,以更簡單更有效地處理表單的輸入與發(fā)布。Web Form 2.0 最令人興奮的功能是輸入驗(yàn)證。目前,我們需要通過 JavaScript 或服務(wù)器端的邏輯,實(shí)現(xiàn)同樣的功能。
比如有下面這樣一個(gè)表單:
在 HTML4 我們需要這樣寫代碼,然后使用 JavaScript 或服務(wù)器端的腳本進(jìn)行驗(yàn)證:
而 html5 中的 html5code.net' title='html5模板網(wǎng)'>required
與 html5code.net' title='html5模板網(wǎng)'>email
屬性可以直接實(shí)現(xiàn)驗(yàn)證,如下:
3. 為 Web 開發(fā)提供 API
HTML 5 將提供多個(gè) html5code.net' title='html5模板網(wǎng)'>API,如音頻和 視頻標(biāo)簽可以讓開發(fā)者不借助第三方工具直接播放 Web 視頻和音頻:
html5code.net' title='html5模板網(wǎng)'>Opera 在者方面有不少研究并有html5code.net' title='html5模板網(wǎng)'>視頻播放 demo 推出
4. <canvas>標(biāo)簽將允許直接在上面用腳本繪圖
人更容易從圖片獲得信息,如,下面的信息通過表格和圓餅圖兩種方式顯示,效果明顯不一樣:
然而以往要實(shí)現(xiàn)這種效果,只能使用靜態(tài)圖片,無法對圖片進(jìn)行調(diào)整。使用 html5code.net' title='html5模板網(wǎng)'><canvas> 標(biāo)簽,你可以實(shí)時(shí)修改參數(shù)對圖形進(jìn)行修改,比如,根據(jù)用戶的投票,實(shí)時(shí)生成圓餅圖。
5. 用戶可以編輯網(wǎng)頁的部分內(nèi)容并實(shí)現(xiàn)同網(wǎng)頁的交互
HTML 5 將支持用戶的html5code.net' title='html5模板網(wǎng)'>交互,contenteditable
屬性允許你設(shè)定網(wǎng)頁的哪一部分可以編輯,在基于 Wiki 的 站點(diǎn),這非常實(shí)用。