HTML.Next會給我們帶來什么?
管 W3C 還在制定最新的 HTML5 規格說明,HTML.Next 的相關工作已經開始了,其中包括大量新元素和特性,但是沒有新的 API。
Michael Smith 是 W3C 的一位編輯,他整理了計劃在 HTML 未來版本中將會實現的大量元素和屬性,它們會是 HTML5.1、5.2或者 HTML6 的組成部分。其中兩個最重要的特性就是 Web Intents 和 Web 組件(Web Components)。
Intents 和 Android Intents 類似,但是它們會暴露給注冊為 intent 處理器的 web 應用程序。 “例如,你可以讓 web 應用程序把自身注冊為照片編輯器,如果用戶想要編輯照片,就可以調用它,”Smith 說到。
Smith 還說,Web 組件提供了“一種把新行為綁定到 DOM 中元素的方式。 這和 XBL 2.0有些類似,”XBL 2.0 是一種 XML 綁定語言,它會把元素關聯到帶有腳本的文檔、事件處理器、CSS 以及另一個文檔的其他內容模型上。
屬性
capture
——它屬于input
元素,提供對相機、麥克風、攝像機以及文件系統的訪問。據 Smith 所說,這個屬性已經實現,但是會放在以后5.1或者5.2版本的規格說明中。inputmode
——幫助我們顯示特殊類型的鍵盤,可能對于輸入字符、數字或者大寫字母進行了優化。download
——文檔作者指定他更喜歡使用a
元素來下載資源。 屬性的值會指定資源的默認值。ping
——用于超鏈接審計(hyperlink auditing)。
元素
content
——“代表影子 DOM 子樹(shadow DOM subtree)的插入點。在渲染時,插入點會被元素的子節點所替換。datagrid
——樹的一種可交互、可排序的表現形式,它會以行和單元格的形式列出數據。decorator
——指定和 CSS 結合使用的模板,以確定頁面上各種組件的感觀。element
——用于定義自定義元素。intent
——用于聲明 intent。menuitem
——與 web 應用程序中菜單項關聯的命令。reco
——用于語音識別。shadow
——“指定一個插入點,在這里會渲染影子 DOM 子樹元素列表中下一個存在時間最長的影子 DOM 子樹。而元素本身不會被渲染。”template
——用于定義可以稍后激活,以插入標記文本的塊。tts
——文本向流媒體的轉換。
關于template
,Smith 提到,在 HTML 工作組(WG)中有一場關于是否需要這個元素的討論。對于reco
和tts
也有同樣的討論,一些人認為這些功能更適合通過腳本來完成。在 WG 中還有一場正在進行關于標記和腳本(markup vs. scripting)的討論,試圖決定通過標記元素要做到什么,以及把什么留給腳本來做。
對于那些有興趣使用 HTML5 的人,有很多資源展示了瀏覽器對 HTML5 特性的支持情況: Web 平臺: 瀏覽器技術、我是否能用…、以及請用 HTML5。充分利用這些資源會帶來很多好處,由于缺少實現,最初包含在 HTML 規格說明中的特性可能會被拋棄。一個例子就是command
,Smith 說它會從 HTML5 的規格說明中刪除,因為沒有任何瀏覽器廠商有興趣實現它。
關于 HTML5 標準的將來,Smith 提到,當前針對規格說明的計劃是在 2014 年底成為推薦技術,那時它會足夠穩定,業界可以安全地采用它。
查看英文原文:What Is to Come in HTML.Next?