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
2007年
2012年
2014年
2018年[ 21]
HTML 5.1
2012年
2015年
2016年
2021年[ 22]
HTML 5.2
2015年
2017年
2017年
2021年[ 23]
HTML 5.3
2017年
不適用
不適用
2021年[ 24]
特點
標記
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] 。
新的API
HTML5相關APIs[ 34]
除了原先的DOM 接口,HTML5增加了更多樣化的應用程序接口 (API)[ 35] :
以上技术尽管是WHATWG HTML说明文档的内容,但并没有全部包括在W3C HTML5的说明文档裡[ 47] 。一些相关的技术,像下面所列的,并没有包括在这2份文档中的任何一份中。W3C给这些技术单独出版了说明文档。
一个普遍的误解是HTML5能够在网页中提供动画效果,这是不对的,动画效果是需要配合JavaScript 和CSS 。然而靜態HTML5配合CSS 可以表示出複雜的排版結構而且原生支援與影片的混合與控制(控制一般由JavaScript 執行),因此簡單可以把HTML5單位時間的狀態理解為動畫的關鍵影格 。
XHTML5(XML-serialized 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] 。
HTML 5和XHTML 1.x的差異
以下為大略的不同之處,與例子:
文件類型聲明(<!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]
注釋
参考文献
^ A vocabulary and associated APIs for HTML and XHTML . 28 October 2014 [2017-05-17 ] . (原始内容存档 于2014-10-30).
^ HTML5 specification finalized, squabbling over specs continues . Ars Technica . 2014-10-29 [2014-10-29 ] . (原始内容存档 于2014-10-29).
^ HTML5 is a W3C recommendation . W3C Blog. 2014-10-28 [2014-10-28 ] . (原始内容存档 于2014-10-28).
^ 4.0 4.1 HTML5 differences from HTML4 . W3C. 2010-10-19 [2010-12-04 ] . (原始内容 存档于2012-06-07).
^ 1.9.2 Syntax Errors . HTML5. 2010-11-16 [2010-12-04 ] . (原始内容 存档于2012-06-07).
^ HTML 4 Errata . World Wide Web Consortium. [2010-12-04 ] . (原始内容 存档于2012-06-07).
^ 7.0 7.1 Frequently Asked Questions (FAQ) About the Future of XHTML . World Wide Web Consortium. [2010-12-04 ] . (原始内容 存档于2012-06-07).
^ Position Paper for the W3C Workshop on Web Applications and Compound Documents . World Wide Web Consortium. [2011-12-30 ] . (原始内容存档 于2017-05-21).
^ W3C Workshop on Web Applications and Compound Documents (Day 1) 2004-06-01 . World Wide Web Consortium. [2011-12-30 ] . (原始内容 存档于2016-04-02).
^ W3C Workshop on Web Applications and Compound Documents (Day 2) 2004-06-02 . World Wide Web Consortium. [2011-12-30 ] . (原始内容 存档于2016-09-03).
^ [whatwg] WHAT open mailing list announcement . lists.w3.org Mailing Lists. [2015-12-08 ] . (原始内容 存档于2016-10-09).
^ This Week in HTML 5 – Episode 5 . WHATWG Blog. [2011-12-30 ] . (原始内容存档 于2011-12-24).
^ HTML5: A vocabulary and associated APIs for HTML and XHTML. . World Wide Web Consortium. [2009-01-28 ] . (原始内容存档 于2012-06-07).
^ FOX News: No Flash on the iPhone? Apple's Steve Jobs Finally Explains Why . Fox News. 2010-04-29 [2011-04-29 ] . (原始内容存档 于2011-06-29).
^ TIME: Steve Jobs: ‘Flash is No Longer Necessary’ and Other Musings . Time. 2010-04-29 [2011-04-29 ] . (原始内容存档 于2011-04-26).
^ Steve Jobs: Why Apple Banned Flash . CBS News . [2011-04-29 ] . (原始内容存档 于2012-07-31).
^ FastCompany: Steve Jobs: Adobe's Flash Is Old PC History, Open Web Is the Future . [2011-04-29 ] . (原始内容存档 于2012-07-18).
^ ' Thoughts on Flash', by Steve Jobs, CEO of Apple, Inc . Apple.com. [2014-01-08 ] . (原始内容存档 于2017-06-26).
^ Is HTML5 Replacing Flash? . Lyquix.com. [2014-01-08 ] . (原始内容存档 于2012-04-25).
^ Open Web Platform Milestone Achieved with HTML5 Recommendation . W3C. 2014-04-28 [2014-10-29 ] . (原始内容 存档于2014-11-02).
^ HTML5 Publication History - W3C . [2023-02-14 ] . (原始内容存档 于2023-05-11).
^ HTML 5.1 2nd Edition Publication History - W3C . [2023-02-14 ] . (原始内容存档 于2023-03-12).
^ HTML 5.2 Publication History - W3C . [2023-02-14 ] . (原始内容存档 于2023-03-12).
^ HTML 5.3 Publication History - W3C . [2023-02-14 ] . (原始内容存档 于2023-05-11).
^ Introduction to HTML5 video (页面存档备份 ,存于互联网档案馆 )
^ IBM Developer Works New elements in HTML5: Structure and semantics (页面存档备份 ,存于互联网档案馆 )
^ ICAMD.org Finalcut Silverlight Films that Videographers share Quicktime in a Flash : Video on the Web using HTML5 and other Codecs (页面存档备份 ,存于互联网档案馆 )
^ 11 Obsolete features — HTML5 . W3C. [2014-03-11 ] . (原始内容存档 于2014-03-04).
^ HTML5 DTD (页面存档备份 ,存于互联网档案馆 ): "HTML5 is not SGML-based, and there will be no official DTD for it."
^ HTML 5 Reference (页面存档备份 ,存于互联网档案馆 ): "Although it is inspired by its SGML origins, in practice, it really only shares minor syntactic similarities." "As HTML5 is no longer formally based upon SGML, the DOCTYPE no longer serves this purpose, and thus no longer needs to refer to a DTD."
^ Shannon Suetos. HTML5: Worth the Hype? . instantshift.com. 26 April 2010 [2012-10-21 ] . (原始内容 存档于2011-03-07).
^ Web Forms 2.0 . 2009-01-05 [2014-02-11 ] . (原始内容 存档于2014-02-09). obsolescence notice
^ HTML . whatwg.org. [2016-12-10 ] . (原始内容存档 于2014-08-05).
^ Sergey Mavrody "Sergey's HTML5 & CSS3 Quick Reference. 2nd Edition". Belisso Corp., 2012. ISBN 978-0-9833867-2-8
^ "HTML5 Differences from HTML4 – APIs" (页面存档备份 ,存于互联网档案馆 ). World Wide Web Consortium .
^ "Get Started with HTML5 Canvas" (页面存档备份 ,存于互联网档案馆 ). Syntaxxx.
^ HTML . whatwg.org. [2014-12-15 ] . (原始内容存档 于2017-06-23).
^ "Offline Web Applications" (页面存档备份 ,存于互联网档案馆 ). World Wide Web Consortium .
^ HTML . whatwg.org. [2014-12-15 ] . (原始内容 存档于2017-06-23).
^ HTML . whatwg.org. [2014-12-15 ] . (原始内容 存档于2017-06-23).
^ HTML elements, HTML5 . w3.org. [2014-12-15 ] . (原始内容 存档于2014-12-21).
^ HTML . whatwg.org. [2014-12-15 ] . (原始内容存档 于2017-06-23).
^ HTML . whatwg.org. [2014-12-15 ] . (原始内容 存档于2017-06-23).
^ HTML . whatwg.org. [2014-12-15 ] . (原始内容 存档于2017-06-22).
^ "HTML5 Web Messaging" (页面存档备份 ,存于互联网档案馆 ). World Wide Web Consortium.
^ "Web Storage Specification" (页面存档备份 ,存于互联网档案馆 ). World Wide Web Consortium.
^ href. 1 Introduction — HTML Standard . Whatwg.org. [2014-01-08 ] . (原始内容 存档于2014-08-16).
^ "Web SQL Database" (页面存档备份 ,存于互联网档案馆 ). World Wide Web Consortium.
^ "Indexed Database" (页面存档备份 ,存于互联网档案馆 ). World Wide Web Consortium.
^ File API . W3.org. [2014-01-08 ] . (原始内容 存档于2017-04-21).
^ "File API" (页面存档备份 ,存于互联网档案馆 ). World Wide Web Consortium.
^ "Filesystem API" (页面存档备份 ,存于互联网档案馆 ). World Wide Web Consortium.
^ "File API: Writer" (页面存档备份 ,存于互联网档案馆 ). World Wide Web Consortium.
^ Web Audio API . Dvcs.w3.org. [2014-01-08 ] . (原始内容 存档于2017-03-06).
^ MDN. element.classList . [2016-12-11 ] . (原始内容 存档于2015-02-11).
^ Web Cryptography Candidate Recommendation: https://www.w3.org/TR/WebCryptoAPI/ (页面存档备份 ,存于互联网档案馆 )
^ WebRTC Working Draft: https://www.w3.org/TR/webrtc/ (页面存档备份 ,存于互联网档案馆 )
^ FAQ – WHATWG Wiki . WHATWG. [2011-08-26 ] . (原始内容 存档于2013-05-12).
^ Percentage of Web sites Using HTML5 . binvisions. [21 October 2011] . (原始内容 存档于2017-06-06).
^ "HTML5 Popularity Among Fortune 500 Companies (页面存档备份 ,存于互联网档案馆 )". INCORE. Retrieved 5 March 2013.
^ HTML5 Test官方測試數據 . [2016-08-06 ] . (原始内容存档 于2016-08-06).
外部連結
網頁技術與標準
文档呈现语言 样式格式描述语言 动态网页技术 用戶端互動技术 用戶端手稿語言 标识定位语言 文档纲要语言