天天看點

01_css3簡介

規範

  • css規範
    • css規範
  • javascript規範
    • ECMA規範
      • ECMA262 js相關的标準
      • ECMA404 json規範
    • DOM規範
    • BOM沒有規範

什麼是css3

CSS3 是級聯樣式表 / 層疊樣式表(Cascading Style Sheets)語言的最新進化,旨在擴充CSS2.1。

狹義上,我們可以認為css3是所有級别為3的css特性的集合。

廣義上,我們應該認為css3是css2.0後出現的所有css相關特性的集合

CSS Level 2 經曆了 9 年的時間(從 2002 年 8 月到 2011 年 6 月)才達到

Recommendation(推薦) 狀态。主要的原因是被一些 secondary features(次要特性) 拖了後腿。

為了加快那些已經确認為沒有問題的特性的标準化速度, W3C 的 CSS Working Group(CSS 工作組)

作出了一項決定, 将 CSS 劃分為許多小元件, 稱之為 子產品 。

這些子產品彼此獨立, 按照各自的進度來進行/列标準化。

其中一些已經是 W3C Recommendation 狀态,

也有一些還僅僅是 early Working Drafts(早期工作草案)。

當新需求被确認後, 新的子產品也同樣被添加進來。

再也沒有css規範,隻存在css子產品及其子產品級别。

(https://www.w3.org/Style/CSS/current-work)

  1. 如果子產品在 CSS 2.1 就有相關的内容,那麼這些子產品就從 level 3 開始。
  2. 如果是完全新的屬性(比如 Flexbox),就直接從 level 1 開始。
  3. 一個子產品的級别和它所在 CSS 的版本無關,即不管它是 CSS 2.1 的内容還是完全新的屬性。
  4. 可能會看到類似 css4-backgrounds 這樣的寫法,其實代表的是

    CSS Background & Borders Level 4,即4表示的是子產品的等級。

CSS Working Group(CSS 工作組)

W3C(World Wide Web Consortium,網際網路聯盟)實際上并不制定标準。

對于 W3C 旗下的各個工作組(Working Groups, WG)來說,W3C 更像是一個論壇,

聚集各種興趣團體并讓他們為某個标準而努力。

當然,W3C 并不隻是作為整個論壇的觀察者:

它制定整個論壇的基本規則并觀察标準制定的整個流程。

一份css标準要經曆的一些流程

标準不是憑空捏造的,制定标準也不是閉門造車。CSS WG 所有的送出都是透明的,

所有的交流都是對公衆開放的。

(https://lists.w3.org/Archives/Public/www-style/)

标準确定一般有6個階段,其中兩個是過渡階段:

(https://www.w3.org/2005/10/Process-20051014/tr#maturity-levels)

  1. 編輯草案 Editor’s Draft (ED)

    這個是規範的開始階段,一個CSS屬性或者選擇器被提出來,并在CSSWG内部研究。如果小組成員同意這個屬性可以正式推出,它就能進入下一階段 。 對于處于這一階段的規範,不附加任何必要條件,也不保證會被 WG 準許。 此外,這也是修改版的第一個階段:所有的修改内容首先要經過 ED,然後才能被釋出。

  2. 工作草案 Working Draft (WD)

    編輯草案後是工作草案,标準的設計階段。小組反複處理來自CSSWG内部和來自小組外部的回報,這個階段有兩個結果:一是可能會因為技術困難或者可能會引起其他問題而使新屬性被完全拒絕;二是規範會通過這個階段,并會作為第一次公開工作草案( First Public Working Draft (FPWD))釋出,後面還會有數個工作草案,會處理來自CSSWG内部和小組外部更廣泛社會的回報。

  3. 最後通告工作草案 – Last Call Working Draft (LCWD)過渡階段

    這是第一個過渡階段,當規範開始考慮從工作草案進入到下一個階段時,将會對新屬性的一些小改動的回報設定一個截止日期,LCWD 即是日期截至後最後的一次公開草案處理。

  4. 候選推薦标準 Candidate Recommendation (CR)規範會在這個階段通過完整的測試,測試人員來自 CSSWG 以及被選為實作這個規範的浏覽器生産商(Chrome, Safari, Firefox, Opera, 等等)。為了繼續進入下一階段,CSSWG 會推出兩個正确的實作規範。
  5. 建議推薦标準– Proposed Recommendations (PR)

    當到達這個階段,W3C全球資源小組:W3C咨詢委員會(W3C Advisory Committee),決定這個規範是否會繼續進入下一個階段。這個階段一般很少有異議出現,是以也是一個過渡階段而已。

    6.推薦标準 Recommendation (REC)

    如果規範到達這個階段,說明規範已經考慮完備并可以讓浏覽器商實作,W3C 和 CSSWG 對這個規範的讨論處理不再活躍,隻做一些必要的維護。

标準(規範)什麼時候是穩定的

規範的穩定性基本和它所在的流程階段沒有關系。當規範特性已經開始傳播開來,

并因為向後相容性不能改變時,它才是穩定的,這個階段可能會在 ED 規範階段或者 CR 階段,

這才是穩定性評判的正确方法,而不是 W3C 的标準釋出流程。

浏覽器字首

有些 CSS 子產品已經十分穩定并滿足了 CSSWG 規定的三個推薦級别之一:

Candidate Recommendation(候選推薦), Proposed Recommendation(建議推薦)

或 Recommendation(推薦)。 這表明這些子產品已經十分穩定,使用時也不必添加字首,

但是一些特性還是有可能在 Candidate Recommendation 階段被放棄。

總結

級聯樣式表(CSS)再也沒有傳統意義上的版本了;相反,它有級别。

每個級别的CSS都建立在以前的、細化的定義和添加特性上。

每個進階級别的特性集都是任何較低級别的超集,是以,

符合更進階别CSS的使用者代理也符合所有較低的級别。