CSSの“モジュール”とは?
いわゆる“CSS3”では、CSSの仕様書は“CSS2”までとは異なり、単一の仕様書ですべての機能が定義されるのではなく、機能ごとに細分化された仕様書である“モジュール(Module)”として策定されるようになりました。“CSS3”は“CSS2.1”の仕様を核として、その仕様の一部を置き換えたり、新たに機能を拡張したりする多数のモジュールによって構成されます。
それぞれのモジュールは個別に策定が進められ、それぞれに“レベル”が与えられます。“CSS2.1”から定義されている機能を拡張するモジュールは“Level 3”から仕様書が策定されていますが、これまでなかった全く新しい機能を定義するモジュールは“Level 1”から仕様書が策定されます。
仕様書の“段階”
W3Cによって策定された仕様書は“勧告”と呼ばれる確定した仕様になるまでに以下の過程があり、今までのCSSの仕様書と同様に“CSS3”を構成するそれぞれのモジュールもこれらの段階を経て仕様が策定されています。
- 作業草稿(Working Draft(WD))
- 設計段階の仕様で、ワーキング・グループの内外からのフィードバックによって繰り返し草案が重ねられます。ワーキング・グループがそのモジュールを策定に取り組むことに一致すると最初の公式な草稿である“初期作業草稿(First Public Working Draft(FPWD))”が発行されます。
- 既知の問題点が解消され、テスト・ビルドや実装によるフィードバックなしで、進捗がなくなると仕様は“最終作業草稿(Last Call Working Draft(LCWD))”となり、次の段階に移行します。
- 勧告候補(Candidate Recommendation(CR))
- 試験段階の仕様で、テスト・ビルドや実装によって仕様が検証されます。作業草稿の段階ほどではありませんが、試験や実装からのフィードバックによって仕様が変更されることがあります。勧告候補から次の段階へ移行するには仕様のすべての機能について2個の独立した実装によって正しく実証されることが必要となります。
- 仕様が固まると“勧告案(Proposed Recommendation(PR))”となり、W3Cの諮問委員会の承認を経て次の段階へ移行します。
- 勧告(Recommendation(REC))
- 完成された仕様です。
- 保守段階でもあり、ワーキング・グループは仕様の正誤表のみを維持し、時折訂正を取り入れた改訂版の仕様を発行します。
モジュールごとに策定の進捗状況は異なり、すでに“勧告”の段階に達しているモジュールもありますが、“作業草稿”の段階にあるモジュールも数多くあります。
ブラウザは“勧告”の段階にある機能だけに対応しているわけではありませんが、モジュールによってブラウザによる機能の実装の状況も大きく異なります。
また、策定段階の仕様には公式の仕様以外に“編集草稿(Editor's Draft(ED))”があります。これはワーキング・グループ内の編集者による仕様の編集用の複製で、ワーキング・グループの総意が反映されているとは限らず、矛盾がある場合もありますが、公式な仕様が発行されるには時間がかかるため、通常は編集草稿が最新の仕様についての参照先となります。
CSSのモジュールの一覧
モジュール | 説明 |
---|---|
CSS Animation Worklet API | |
CSS Animations | アニメーション |
CSS Backgrounds and Borders | 背景と境界線 |
CSS Basic User Interface | |
Behavioral Extensions to CSS | |
CSS Box Alignment | |
CSS Box Model | ボックス・モデル |
CSS Box Sizing | |
CSS Cascading and Inheritance | スタイルのカスケードと継承 |
CSS Cascading Variables | |
Compositing and Blending | |
CSS Color Adjustment | ユーザー・エージェントによる自動的な色の調整 |
CSS Color | |
CSS Conditional Rules | 条件付グループ・ルール |
CSS Containment | |
CSS Counter Styles | カウンター・スタイルの定義 |
CSS Device Adaptation | |
CSS Display | ボックス・ツリーの構築 |
CSS Easing Functions | |
CSS Exclusions | |
CSS Fill and Stroke | |
Filter Effects | フィルターによるグラフィカル効果 |
CSS Flexible Box Layout | |
CSS Font Loading | |
CSS Fonts | |
CSS Fragmentation | |
Fullscreen | |
CSS Generated Content for Paged Media | |
CSS Generated Content | |
Geometry Interfaces | |
CSS Grid Layout | |
CSS Hyperlink Presentation | |
CSS Images | 画像や置換要素に関連する機能 |
CSS Inline Layout | テキストやインライン・レベルのボックスのレイアウト |
CSS Intrinsic & Extrinsic Sizing | |
CSS Layout API | |
CSS Line Grid | |
CSS Lists | |
CSS Logical Properties and Values | |
CSS Marquee | |
CSS Masking | |
Media Queries | |
CSS Mobile Profile | |
Motion Path | |
CSS Multi-column Layout | |
CSS Namespaces | 名前空間 |
Non-element Selectors | |
CSS Object Model | |
CSSOM View | |
CSS Overflow | あふれるコンテンツの扱い |
CSS Overscroll Behavior | |
CSS Page Floats | |
CSS Paged Media | |
CSS Painting API | |
CSS Positioned Layout | |
CSS Presentation Levels | |
CSS Print Profile | |
CSS Properties and Values API | |
CSS Pseudo-Elements | |
The CSS 'Reader' Media Type | |
CSS Regions | |
Resize Observer | |
CSS Rhythmic Sizing | |
CSS Round Display | |
CSS Ruby Layout | |
CSS Scoping | |
CSS Scroll Anchoring | |
CSS Scroll Snap | |
CSS Scrollbars | |
Selectors | |
CSS Shadow Parts | |
CSS Shapes | |
CSS Spatial Navigation | |
CSS Speech | |
CSS Style Attributes | |
CSS Syntax | CSSスタイルシートの構造と構文 |
CSS Table | |
CSS Template Layout | |
CSS Text Decoration | テキスト装飾 |
CSS Text | テキストの取り扱い |
CSS Transforms | 要素の変形 |
CSS Transitions | 遷移効果 |
CSS TV Profile | |
CSS Typed OM | |
CSS Values and Units | 値と単位 |
Web Animations | |
CSS Will Change | |
Worklets | |
CSS Writing Modes | 書字方向 |