HTML5[註 1]是HTML最新的修訂版本,由萬維網聯盟(W3C)於2014年10月完成標準制定[2][3]。目標是取代1999年所制定的HTML 4.01和XHTML 1.0標準,以期能在互聯網應用迅速發展的時候,使網絡標準達到符合當代的網絡需求。廣義論及HTML5時,實際指的是包括HTML、CSS和JavaScript在內的一套技術組合。它希望能夠減少網頁瀏覽器對於需要外掛程式的豐富性網絡應用服務(Plug-in-Based Rich Internet Application,RIA),例如:Adobe Flash、Microsoft Silverlight與Oracle JavaFX的需求,並且提供更多能有效加強網絡應用的標準集。
HTML5添加了許多新的語法特徵,其中包括<video>
、<audio>
和<canvas>
元素,同時整合了SVG內容。這些元素是為了更容易地在網頁中添加和處理多媒體和圖片內容而添加的。其它新的元素如<section>
、<article>
、<header>
和<nav>
則是為了豐富文件的數據內容。新的屬性的添加也是為了同樣的目的。同時也有一些屬性和元素被移除掉了。一些元素,像<a>
、<cite>
和<menu>
被修改,重新定義或標準化。同時APIs和DOM已經成為HTML5中的基礎部分[4]。HTML5還定義了處理非法文件的具體細節,使得所有瀏覽器和客戶端程式能夠一致地處理語法錯誤[5]。
發展歷史
網頁超文字技術工作小組(WHATWG)於2004年開始制定新標準。當時,HTML 4.01自2000年以來從未更新[6],以及萬維網聯盟(W3C)正在將未來的發展重點放在XHTML 2.0。2009年,W3C允許XHTML 2.0工作組章程結束過期並且決定不再續訂[7]。W3C與WHATWG合作共同為發展HTML5而努力[7]。
2004年6月,Mozilla基金會和Opera軟件公司在萬維網聯盟(W3C)所主辦的研討會上提出了一份立場文件[8],其重點是開發與現有瀏覽器向後相容的技術[9],包括Web Forms 2.0最初草案規範。研討會以8票贊成,14票反對的結果否決繼續對HTML的開發工作[10]。此舉引起一些人的不滿,因此在研討會之後,立即成立了網頁超文字技術工作小組(WHATWG),並根據該目標展開工作,同時宣佈第二個草案Web Applications 1.0[11]。後來這兩種規範合併形成HTML5[12]。2007年,獲得W3C接納,並成立了新的HTML工作團隊。2008年1月22日,第一份公開工作草案發佈[13]。
儘管HTML5已經在網絡開發人員中非常知名,但它成為主流媒體的話題是在2010年的4月[14][15][16][17],當時蘋果公司的CEO賈伯斯發表一篇題為「對Flash的思考」的文章,指出隨着HTML5的發展,觀看影片或其它內容時,Adobe Flash將不再是必須的[18]。這引發了開發人員間的爭論,包括HTML5雖然提供了加強的功能,但開發人員必須考慮到不同瀏覽器對標準不同部分的支援程度的不同,以及HTML5和Flash間的功能差異[19]。
2014年10月28日,W3C正式發佈HTML5推薦標準[20]。
W3C的HTML5、5.1、5.2、5.3推薦標準時間表:
特點
HTML5提供了一些新的元素和屬性,反映典型的現代用法網站。其中有些是技術上類似<div>
和<span>
標籤,但有一定含義,例如<nav>
(網站導航塊)和<footer>
。這種標籤將有利於搜尋引擎的索引整理、小螢幕裝置和視障人士使用。同時為其他瀏覽要素提供了新的功能,通過一個標準介面,如<audio>
和<video>
標記[25][26][27]。一些過時的HTML 4.01標記將取消,其中包括純粹用作顯示效果的標記,如<font>
和<center>
,因為它們已經被CSS取代[28]。還有一些通過DOM的網絡行為。
儘管和SGML在標記上的相似性,HTML5的句法並不再基於它了[29][30],而是被設計成向下相容對老版本的HTML的解析。它有一個新的開始列看起來就像SGML的文件類型聲明,<!DOCTYPE HTML>
,這會觸發和標準相容的彩現模式[31]。在2009年1月5日,HTML5添加了Web Form 2.0的內容,HTML5開始發展起來[32][33]。
除了原先的DOM介面,HTML5增加了更多樣化的應用程式介面(API)[35]:
- Canvas[36]
- 定時媒體播放[37]
- 離線[38]
- 可編輯內容[39]
- 拖放[40]
- 歷史[41]
- MIME和協定處理程式時表頭登記[42][43]
- 微數據[44]
- 網絡訊息[45]
- 網絡儲存[46]
以上技術儘管是WHATWG HTML說明文件的內容,但並沒有全部包括在W3C HTML5的說明文件裏[47]。一些相關的技術,像下面所列的,並沒有包括在這2份文件中的任何一份中。W3C給這些技術單獨出版了說明文件。
- 地理位置
- 網頁SQL數據庫 ─ 本地SQL數據庫(不再維護)[48]
- IndexedDB[49]
- 檔案[50] ─ 處理檔案上載和操縱檔案[51]
- 目錄和檔案系統 ─ 這個API是為了滿足客戶端在沒有好的資料庫支援情況下儲存要求[52]
- 檔案寫入 ─ 從網絡應用程式向檔案裏寫內容[53]
- 網絡音頻[54]
- ClassList[55]
- 網絡加密[56]
- WebRTC[57]
一個普遍的誤解是HTML5能夠在網頁中提供動畫效果,這是不對的,動畫效果是需要配合JavaScript和CSS。然而靜態HTML5配合CSS可以表示出複雜的排版結構而且原生支援與影片的混合與控制(控制一般由JavaScript執行),因此簡單可以把HTML5單位時間的狀態理解為動畫的關鍵幀。
XHTML5是對HTML5的XML序列化。XML文件必須被設置為XML互聯網檔案類型,像application/xhtml+xml
或者application/xml
。XHTML5要求像XML一樣嚴格的格式化的語法。在XHTML5中,HTML5的<!DOCTYPE HTML>
可有可無的。
XHTML5並非XHTML的第5版,沒有自己獨立的標準規範,而是HTML5的一種序列化方式。XHTML1.x和2.0使用的名字是Extensible HyperText Markup Language,不同於XHTML5。
HTML5在設計時保證舊的瀏覽器能夠安全地忽略掉新的HTML5代碼[4]。與HTML4.01相比,HTML5給出了解析的完整規則,讓不同的瀏覽器即使在發生語法錯誤時也能返回完全相同的結果[58]。
根據2011年9月30日發佈的一份報告,全球排名前100的網站中有34個網站使用HTML5──主要是搜尋引擎與社交網站[59]。2013年8月發佈的另一份報告顯示,財富美國500強企業中已有多達153家採用HTML5[60]。
以下為大略的不同之處,與例子:
- 檔案類型聲明(
<!DOCTYPE>
)僅有一型:<!DOCTYPE HTML>
。 - 新的解析順序:不再基於SGML。
- 新的元素:
section
,video
,audio
,bdi
,progress
,nav
,meter
,time
,article
,aside
,canvas
,command
,datalist
,details
,embed
,figcaption
,figure
,footer
,header
,hgroup
,keygen
,mark
,output
,rp
,rt
,ruby
,source
,summary
,wbr
,track
。 input
元素的新類型:date
,email
,url
等等。- 新的屬性:
ping
(用於a
與area
),charset
(用於meta
),async
(用於script
)。 - 全域屬性:
id
,tabindex
,repeat
。 - 新的全域屬性:
contenteditable
,contextmenu
,draggable
,dropzone
,hidden
,spellcheck
。 - 移除元素:
acronym
,applet
,basefont
,big
,center
,dir
,font
,frame
,frameset
,isindex
,noframes
,strike
,tt
。
各瀏覽器的支援
HTML5 Test網站,是用以測試對瀏覽器對熱門新功能的支援。測試的滿分是555分。而當中的額外分數表示瀏覽器對一些沒有列入W3C的標準亦有支援,例如<video>
元素並沒有指明編碼標準,HTML5支援MPEG-4、H.264、Ogg Theora及WebM 影音編碼。HTML5 Test並未測試所有新加入的功能,分數高只代表瀏覽器現時對所挑選的新網頁編碼整體上有較佳的支援,並不代表日後其表現的趨勢,因此分數只能作為參考。
2018年7月15日,以及2022年補充五大瀏覽器所取得的分數分別是:[61]
瀏覽器 | 2018正式版本 | 分數 | 2018開發版本 | 分數 | 2022 | 分數 |
---|---|---|---|---|---|---|
Google Chrome | 67 | 528 | 68 | 528 | 106 | 528 |
Opera | 54 | 528 | 55 | 528 | ? | ? |
Microsoft Edge | 17 | 492 | 18 | 496 | ? | ? |
Mozilla Firefox | 61 | 497 | 62 | 497 | ? | ? |
Apple Safari | 11.1 | 471 | 11.2 | 477 | 16.0 | 514 |
註釋
參考文獻
外部連結
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.