Main title
This is the content of this section
摘要:問題在于標準是同一硬幣的一面。然后,又改名為現存標準來指定它將不斷發展和不再支持使用版本號引用。作為這一步的結果,該組織正在積極開發的標準被稱為新版本。所以,刪除版本號使其具有連續性聽起來是比較合理地。特別地,標準去掉了和事件。
原文地址:http://developer.telerik.com/featured/w3c-vs-whatwg-html5-specs-differences-documented/
幾周以前,HTML5成為W3C的一個正式推薦。我在SitePoint上針對這一事件討論了5個有趣但現在過時的功能 。
問題在于W3C標準是同一硬幣的一面。從HTML的這個版本開始,開發者和瀏覽器供應商可以在相同標記語言的兩種不同風格之間進行選擇:W3C開發的規范和WHATWG開發的規范。
譯者注:WHATWG:Web Hypertext Application Technology Working Group,網頁超文本應用技術工作小組,是一個以推動網絡標準為目的而成立的組織。(為了準確,后面不做翻譯)
就大部分而言,這些規范都是相同或者說非常相似的,但是幾年過去之后,越來越多的差異出現。你會關心他們嗎?在大多數情況下不會,因為它對你和你的項目差異很小,或者瀏覽器供應商會支持這兩個標準。然而,在短期內,那些影響已給定功能實現的差異可能對你比較重要。每個瀏覽器供應商遵循規范都有自己的需求。例如來自于Mozilla的David Baron目前聲明:
當W3C和WHATWG的HTML標準不同時,我們傾向于遵循WHATWG標準。
在這篇文章里,我們將解決W3C和WHATWG標準之間的一些差異,在每個部分的結尾我會給出我對差異的看法。這并不是一個全面的列表,但是足夠讓你在這個問題有自己的觀點。
"HTML5" vs "HTML 現存標準"我們以一個簡單的主題來開始討論差異:標準的名稱。WHATWG標準的版本去掉了名字后面的"5"在2011年初更名為"HTML"。然后,又改名為"HTML 現存標準"來指定它將不斷發展和不再支持使用版本號引用。
相反地,W3C標準繼續使用數字,正如介紹中提到的一樣,最后一個穩定版本是5,例如HTML5。作為這一步的結果,該組織正在積極開發的標準被稱為HTML5.1新版本。在HTML5.1里,一些HTML5里面的元素和屬性將不會再有,例如正在討論的dailog元素,month和week類型的input。
觀點我認為現在和2000年之前的世界變化太大了,因為技術以一個瘋狂的速度發展著,尤其在web端。所以,刪除版本號使其具有連續性聽起來是比較合理地。然而,不是所有的瀏覽器都會自動更新或者以同樣的速度發布(常用的術語是一個evergreen browser),所以將一組功能放到一個或者多個瀏覽器版本是有道理的。
我的觀點是,有一個版本可以供開發人員參考并做出更好的計劃,直到每一個瀏覽器都采用這一策略的快速發布和自動更新。不是因為,為了使用一些的功能去開發網站而需要檢測瀏覽器的版本(你真的需要使用該功能檢測),而是因為,我們可以獲得其統計數據使用一個特定版本的瀏覽器。使用這些統計數據,在合適的時間你可以采用一些功能在你的項目中。
polyfills 和 shims可以幫助你實現,但是把它們加到你的網站中你需要考慮權重?
main元素是最新增加標準中的其中一個,不同的標準對于它有不同的定義。W3C標準定義為頁面的主要內容 - 內容是一個頁面的主要主題或者一個應用的核心功能。標準還定義一個文檔中不能出現一個以上的main元素,并且main元素需要搭配role="main"或者其他等效性的APIS。
根據這個標準的一個簡單的例子如下所示:
Main title
Main title
This is the content of this section
WHATWG標準不給main元素分配任何語義值,它定義為其他元素主導內容的容器。如果你堅持WHATWG標準,它沒有限制你使用main元素的次數。因此如果你在一個頁面中有多個article元素,你需要使用main元素標記每個article的的內容。
使用基于WHATWG標準的一個例子是:
Main title
Main title
This is the content of this section
請注意,在上面的代碼中,我使用了兩次main元素。
觀點關于main元素,我與W3C看法一致,因為我質疑在一個文檔中有多個主要區域的需求。此外,我記得 Steve Faulkner(W3C的標準的編輯)多次敦促 Ian Hickson(WHATWG標準的編輯)在WHATWG郵件中提供能夠證明需要多個主要區域的數據。結論是,在所有的場合WHATWG編輯提供這些數據失敗。
hgroup 元素hgroup元素用于組合一個或多個h1-h6的元素集合,對組織一個部分的標題和相應的子標題十分有用。
引入此元素以便于創建子標題,并解決文檔輪廓算法的重要問題。實際上,將多個標題元素放在hgroup中,想象文檔大綱應該是包含所有標題,但從最終的結果中看出只有最高級別的標題元素。
一個使用它的例子,來源于我的文章HTML5中5個過時的功能,如下所示:
5 deprecated features of HTML5
Sometimes specifications are changed and you need to refactor your code
In this article we"ll discuss...
2013年4月由于缺乏實現,用例不足和促進標記反面模式而從W3C標準刪除。相反地,WHATWG標準還包括ghroup。
觀點正如引用文章中所說,我一直是這個元素的粉絲但是我棄用了它。第一個原因是,我是W3C標準的一個追隨者。第二個原因是,我注意到對這個缺乏興趣和在瀏覽器中實現。
Web Notifications APIWeb Notifications API定義是為終端用戶提供通知的一個API。一個允許提示用戶當前網頁之外的通知,例如電子郵件傳送。每當用戶收到了一封新的電子郵件都需要通知用戶或者有意見事情需要他們關注。一些具體的例子是如果有人在twitter發文,或者發了一張照片在Facebook或Google+。
使用此API的簡單例子如下:
Notification.requestPermission(function() { var notification = new Notification("Email received", { body: "You have a total of 3 unread emails" }); notification.onshow = function() { console.log("Notification shown"); }; });
Web Notifications API在W3C標準和WHATWG標準都有明確的規定,兩個版本之間有一些差異。特別地,WHATWG標準去掉了onclose和onshow事件。因此,W3C標準定義了4個事件(onclick, onclose, onerror, 和onshow),WHATWG標準只定義了兩個(onclick 和 onerror)。
如果你想了解更多API的不同版本和主要瀏覽器的支持,你可以看看我的這篇文章Web Notifications API的狀態。
觀點標準之間沒有太大的差異,但是它會影響你執行某些任務的方法。在這種情況下,我遵循W3C標準,我考慮的當我觸發關閉事件的需要做執行某些操作,但是WHATWG不可能。
結論在本文中我們討論了一些W3C與WHATWG標準之間最重要的差異。正如你看到的,考慮到標準中定義的元素和APIS的數量,還是沒有太多的差異。有了這一想法,就不會擔心未來,因為我相信標準最后都會和現實需求匹配,這意味著,不管哪個組織開始一個新的功能都會有明確的規定,開發者和瀏覽器供應商都有權利去使用成功的一個或另一個版本。因此,瀏覽器供應商和開發者是決定哪個標準"成功"實施或者棄用他們的主導者。正因為如此,對于每一個討論的功能,最終都會該表標準以符合現實需求。
最后一點,如果你想發現更多的差異,你可以看W3C的這篇文章 W3C HTML5.1標準與WHATWG LS的不同。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/50138.html
摘要:該區域代表可以被所控制的畫布。那么現在第二個問題,識別該文檔,這或許不是大部分用戶的需求,但小部分用戶并不意味著人數少。因此一個基于的請求于標準內提出。 前言 作為程序員,技術的落實與鞏固是必要的,因此想到寫個系列,名為 why what or how 每篇文章試圖解釋清楚一個問題。 這次的 why what or how 主題:現在幾乎所有人都知道了 HTML5 ,那么 H5 到底相...
摘要:提交內容可以是一個提議想法初步描述該階段是對所提交新特性的正式建議。在這個階段需具備以下條件指定一名成員作為審閱通過有實現的或者初步編寫標準,包括問題描述解決方案示例語法語義關鍵的算法及抽象實現在的復雜度等該階段是會出現標準中的第一個版本。 ECMAScript 與 JavaScript ECMAScript 是一套腳本語言的規范,內部編號 ECMA-262 該規范由 Ecma(Eu...
閱讀 878·2021-11-15 11:37
閱讀 3614·2021-11-11 16:55
閱讀 3279·2021-11-11 11:01
閱讀 1006·2019-08-30 15:43
閱讀 2753·2019-08-30 14:12
閱讀 690·2019-08-30 12:58
閱讀 3395·2019-08-29 15:19
閱讀 2034·2019-08-29 13:59