1. 概論
最初のCSS仕様が公開されたときに、CSSのすべては、CSSレベル1を定義した1つの文書に含まれていました。CSSレベル2はまた、複数の章からなる単独の文書によって定義されていました。しかし、レベル2を超えるCSSに対して、CSSワーキンググループは、単一のモノリシックな仕様を定義するよりもむしろ、各モジュールがCSSのある部分を定義することで、モジュール式のアプローチを採用することにしました。これは、より管理しやすい塊に仕様を分割し、CSSへのより直接的で、漸進的な改善を可能にします。
種々のCSSモジュールは安定性の異なるレベルにあるため、CSSワーキンググループは、2015年後半現在でカスケーディングスタイルシートの現在の範囲と状態を定義するために、このプロファイルを公開することを選択しました。このプロファイルは、我々が安定性を検討し、かつ我々がその安定性を保証する十分な実装経験を持つ仕様のみが含まれます。
注:これは、CSSデスクトップブラウザーのプロファイルであることを意図しません。このプロファイルに含まれるものは、機能の安定性にのみ基づき、予想される用途やウェブブラウザーの採用に基づきません。このプロファイルは、最も完全な形でCSSを定義します。
注:我々は、このスナップショットを形成する仕様に大きな変更を予想しませんが、包含する仕様は、仕様が固まっていることを意味するものではありません。CSSワーキンググループは、仕様で見つかる問題に対処し続けます。実装者は、任意の変更、修正、または明確化に対してwww-styleおよび/またはCSS Working Group Blogを監視すべきです。
1.1. 背景:W3CプロセスとCSS
この節は非規範的です。
W3Cプロセスにおいて、勧告トラック文書は以下にまとめられる、安定性の3つのレベルを通過します:
- 草案(Working Draft: WD)
-
これは、W3C仕様の設計段階です。ワーキンググループは、内部および外部のフィードバックに応えて仕様を繰り返し発行します。
最初の公式作業草案は、「最初の公開草案」(First Public Working Draft: FPWD)に指定されます。CSSワーキンググループにおいて、FPWDの発行は、ワーキンググループ全体が、編集者草案で大まかに調べられ提案されたように、モジュールで作業することに合意したことを示します。
次の段階への移行は時に「最終作業草案」(Last Call Working Draft: LCWD)段階と呼ばれます。一旦我々がすべての既知の問題を解決してCSSワーキンググループは作業草案を移行し、テストの構築と実装からフィードバックなしにさらにプロセスを進めることができません。
この「コメントに対するラストコール」は、任意の未解決の問題を報告するための期限を設定し、入ってくるフィードバックを特別に追跡して対処することをワーキンググループに要求します。コメント追跡文書は、コメントの解決(Disposition of Comments: DoC)です。これは、広いレビューと支持を実証するために、ディレクターの承認に対する更新された草案と一緒に提出されます。
- 勧告候補(Candidate Recommendation: CR)
-
これは、W3C仕様のテスト段階です。とりわけこの段階は、仕様をテストするために試験と実装を使用するということを意味します。実装をテストすることが目的ではありません。このプロセスは多くの場合、仕様についてより多くの問題を明らかにし、そして勧告候補は、通常設計段階(草案)時よりも少ないにもかかわらず、実装とテストのフィードバックに応じて時間をかけて変化させます。
各機能の2つの正しい、独立している実装の実演は、勧告候補を終了するのに必要なので、この段階でワーキンググループはテストスイートを作成して実装のレポートを生成します。
次の段階への移行は、「勧告案」(Proposed Recommendation: PR)です。この段階の間にW3C諮問委員会は、勧告への移行を承認しなければなりません。
- 勧告(Recommendation: REC)
- これは、W3C仕様の完成した状態であり、メンテナンス段階を表します。この時点で草案は、エラッタ文書を維持し、仕様に戻るエラッタを組み込む更新版を折に触れて発行します。
編集者草案(Editor’s Draft)は、効果的に編集者自身の作業コピーのライブコピーです。編集者草案は、ワーキンググループのコンセンサスを反映してもしなくてもよく、折に触れて自己矛盾した状態にすることができます。(W3Cでの公開プロセスは時間がかかり面倒なので、編集者草案は通常、仕様に対する最善の(最新の)基準です。公式草案が定期的に最新でありそして編集者草案がスクラッチスペースとしての本来の機能に戻ることができるように、試みは発行の衝突を低減するために現在進行中です。)
2. Cascading Style Sheets (CSS) — 公式の定義
2015年現在で、カスケーディングスタイルシート(CSS)は、次の仕様によって定義されます。
- CSS Level 2、最新のリビジョン(エラッタを含む)[CSS2]
- これは、後の仕様によって上書きされる部分の、CSSの中核を定義します。我々は、CSSの基本的な概念とその設計原理の一部を紹介する、2章を読むことを特に推奨します。
- CSS Syntax Level 3 [CSS-SYNTAX-3]
- どのようにCSSが解析されるかを定義する、CSS2§4.1、CSS2§4.1、CSS2§4.2、CSS2§4.4およびCSS2§Gを置換します。
- CSS Style Attributes [CSS-STYLE-ATTR]
- CSS宣言をマークアップ属性に埋め込むことを可能にする方法を定義します。
- Media Queries Level 3 [CSS3-MEDIAQUERIES]
- CSS2§7.3を置換し、メディア固有のスタイルに対する構文を拡張します。
- CSS Conditional Rules Level 3 [CSS3-CONDITIONAL]
- ネストを可能にするために@media規則の定義を更新し、CSS2§7.2を置換し、機能サポートクエリーに対する@supports規則を導入します。
- CSS Namespaces [CSS3-NAMESPACE]
- 名前空間接頭辞のセレクタを可能にするための@namespace規則を導入します。
- Selectors Level 3 [SELECT]
- 拡張されたセレクタの範囲を定義する、CSS2§5とCSS2§6.4.3を置換します。
- CSS Cascading and Inheritance Level 3 [CSS-CASCADE-3]
- CSS2§1.4.3とCSS2§6を置換します
- CSS Values and Units Level 3 [CSS-VALUES-3]
- CSSのプロパティ定義構文を定義して単位のセットを拡張する、CSS2§1.4.2.1、CSS2§4.3、およびCSS2§A.2.1-3を置換します。
- CSS Color Level 3 [CSS3-COLOR]
- 色値の拡張した範囲を定義する、CSS2§4.3.6、CSS2§14.1、およびCSS2§18.2を置換します。また、opacityプロパティを導入します。
- CSS Backgrounds and Borders Level 3 [CSS3-BACKGROUND]
- 層状の背景画像、画像ボーダー、およびドロップシャドウ含む、背景とボーダーのより多くの制御を提供し、CSS2§8.5とCSS2§14.2を置換します。
- CSS Image Values and Replaced Content Level 3 [CSS3-IMAGES]
- (画像など)置換要素の大きさに対する新しい土台テキストを提供し、その大きさと向きに追加のコントロールを追加し、CSSの画像としてグラデーションの構文を導入します。
- CSS Fonts Level 3 [CSS-FONTS-3]
- CSS2§15を置換し、フォントの選択と機能選択をより詳細な制御を提供します。
- CSS Multi-column Layout Level 1 [CSS3-MULTICOL]
- CSSレイアウトに多層カラムフローを導入します。
- CSS User Interface Module Level 3 [CSS-UI-3]
- またユーザーインターフェイスをまた強化するカーソル、アウトラインと複数の新しいユーザーインターフェイスを定義する、CSS2§18.1とCSS2§18.4を置換します。
- CSS Compositing and Blending Level 1 [COMPOSITING]
- オーバーレイされたコンテンツの合成や混合を定義し、それらのモードを制御するための機能を導入します。
- CSS Transitions Level 1 [CSS3-TRANSITIONS]およびCSS Animations Level 1 [CSS3-ANIMATIONS]
- 時間をかけてCSSプロパティの算出値を推移するためのメカニズムを定義します。
- CSS Flexible Box Module Level 1 [CSS-FLEXBOX-1]
- CSSに柔軟な直線レイアウトモデルを導入します。
- CSS Transforms Level 1 [CSS3-TRANSFORMS]
- CSSにグラフィカルな変換を導入します。
- CSS Counter Styles Level 3 [CSS-COUNTER-STYLES-3]
- <counter-style>の可能な値を拡張し、カスタマイズされたカウンタースタイルに@counter-style構文を提供します。
- CSS Masking Level 1 [CSS-MASKING-1]
- CSS2§11.1.2を置換し、コンテンツの切り抜きやマスキングのより強力な方法を導入します。
- CSS Shapes Module Level 1 [CSS-SHAPES-1]
- 非矩形を包む形状をもたらすためのフロートを拡張します。
- CSS Text Decoration Level 3 [CSS-TEXT-DECOR-3]
- テキスト装飾ラインにより詳細な制御を提供し、テキスト圏点とテキストシャドウを指定するための機能を追加する、CSS2§16.3を置換します。
- CSS Will Change Level 1 [CSS-WILL-CHANGE-1]
- will-changeと呼ばれるパフォーマンスヒントのプロパティを導入します。
将来のスナップショットにそれらを組み込むことを希望します。
2.1. CSSのレベル
Cascading Style Sheetsは、従来の意味におけるバージョンを持ちません。代わりに、レベルを持ちます。CSSの各レベルは、定義を精錬して機能を追加する、前のレベルに基づきます。各上位レベルの機能セットは、任意の下位レベルのスーパーセットであり、上位レベルで特定の機能を許可される動作は、下位レベルで許可されるもののサブセットです。よってCSSの上位レベルに適合するユーザーエージェントはまた、すべての下位レベルに適合します。
- CSS Level 1
- CSSワーキンググループは、CSS1仕様が時代遅れであると考えます。CSSレベル1は(プロパティ、値、@規則など)CSS1仕様で定義されるすべての機能として定義されますが、CSS2.1仕様における構文と定義を使用します。CSSスタイル属性は、要素固有のスタイル属性で包含物を定義します。
- CSS Level 2
-
CSS2仕様は技術的にW3C勧告ですが、W3Cが勧告候補の段階を定義する前に、CSS2は勧告段階に移行しました。時間をかけての実装経験とさらなるレビューは、CSS2仕様で多くの問題を表面化させ、既に手に負えないエラッタリストを拡充する代わりに、CSSワーキンググループは、CSSレベル2リビジョン1(CSS2.1)を定義することにしました。2つの仕様の間に矛盾がある場合にはCSS2.1が最終的な定義を含みます。
CSS2の廃止されたCSS2勧告として正式に安定性の同じレベルでないにもかかわらず、一度CSS2.1が勧告候補になれば効果を持ちます。CSS2.1から削除されたCSS2の機能は、勧告候補の段階にあると考えられますが、これらの多くはCSSレベル3草案に引き込まれることに注意すべきです。その場合にその仕様が一度勧告候補に到達すれば、CSS2の定義は廃止されます。
CSS2.1仕様はCSSレベル2を定義し、CSSスタイル属性仕様は要素固有のスタイル属性での包含物を定義します。
- CSS Level 3
-
CSSレベル3は、CSS2.1の核としてCSS2.1仕様を使用する、CSSレベル2モジュールごとに基づきます。各モジュールは、機能を追加および/またはCSS2.1仕様の一部を置換します。新しいCSSモジュールがCSS2.1仕様と矛盾しないことをCSSワーキンググループは意図します。モジュールは単に機能を追加して、定義を洗練します。各モジュールが完了するように、以前に完了したモジュールに加えるCSS2.1の既存のシステムに埋め込まれます。
これ以降のモジュールレベルは、独立してレベル付けされます。たとえばSelectors Level 4は、CSS Line Module Level 3の前に完了してもよいです。CSSレベル2に等価なものがないモジュールは、レベル1で開始します。CSSレベル2に存在する機能を更新するモジュールは、レベル3で開始します。
- CSS Level 4以降
- CSSレベル4は存在しません。独立したモジュールはレベル4以降に到達することができますが、CSS言語はもはやレベルを持ちません。(用語としての「CSSレベル3」は、以前のモノリシックバージョンからレベルを区別するためにのみ使用されます。)
2.2. CSSプロファイル
すべての実装が、CSSで定義されるすべての機能を実装するとは限りません。たとえば、実装はCSSプロファイルで必要とされる機能のみを実装することを選択してもよいです。プロファイルは、CSS実装の特定のクラスに対する基本的な考えCSSの考慮された基本のサブセットを定義します。W3C CSSワーキンググループは、次のCSSプロファイルを定義します:
注:たとえCSSのサブセットが公式プロファイルであっても、CSSの部分的な実装は、部分的実装のための前方互換構文解析規則に従わなければなりません。
3. CSSの責任ある実装に対する要求
以下の節は、現在と将来の相互運用性を促進するような方法で、責任を持ってCSSを実装するための複数の適合性要件を定義します。
3.1. 部分的実装
著者がフォールバックの値を割り当てるための上位互換の解析規則を利用することができるようにするために、CSSレンダラは任意の@規則、プロパティ、プロパティの値、キーワード、その他レンダラが使用可能なサポートのレベルがない構文要素を、無効(そして必要に応じて無視)として扱わなければなりません。特に、ユーザーエージェントはある1つの複数値プロパティ宣言において非サポートのコンポーネントの値を無視し、かつサポートされる値を選択的に履行してはなりません。任意の値が無効と見なされる(サポートされない値はそうでなければならない)場合、CSSは宣言全体が無視される必要があります。
3.2. 不安定な実装とプロパティ機能
将来の安定したCSS機能との衝突を避けるために、CSSワーキンググループは、不安定な機能とCSSへの独自拡張の実装に対する次のベストプラクティスを推奨します。
3.2.1. 実験および不安定な機能
W3C仕様書に記載されるが、相互運用可能でない不安定な機能の実装は、一般的使用に対して広く公開されるべきではありませんが、コントロールされた環境で実験的使用、限定的に公開されてもよいです。
なぜ?
私たちは、機能を実験してフィードバックを与えることを著者と実装者の両方を可能にしたいが、量産ウェブサイトで著者がCSS機能に依存することを防止し、かつ後で変更されるかもしれない特定の構文または動作を誤って「ロックイン」することから著者を防止します。あるCSS機能の仕様がW3Cプロセスにおける勧告候補(CR)の段階に達するまで、そのCSS機能は不安定であると考えられます。例外的なケースとして、CSSWGは追加で、公式に記録される決議により、広い使用のために公開しても安全と考えられるセットにCR前の機能を追加するかもしれません。
注:しばらくの間で変更されていないCR前の仕様は通常安定版よりも時代遅れであるので、ベンダーは、WGに明示的に相談すべきであり、かつこの点についての仮定を行うべきではありません。
ワイドリリースに承認されたCR前機能の現在のリストは次で構成されます:
- CSS Animations [CSS3-ANIMATIONS]
- CSS Transitions [CSS3-TRANSITIONS]
- CSS Transforms [CSS3-TRANSFORMS]
- [CSS-SIZING-3]由来のmin-content、max-contentおよびfit-contentキーワード
- [SELECTORS4]由来の:dir()および:lang()セレクター
3.2.2. 所有者と非標準機能
将来のCSS機能との衝突を避けるために、CSS2.1仕様は、CSSの独占かつ実験的な拡張のための接頭辞構文 [CSS21]を予約します。あるCSS機能が、単一ベンダーのユーザーエージェントにのみアクセス可能な閉じた環境において使用を意図される場合、独自拡張です。ユーザーエージェントは、ベンダー接頭辞構文を通してのみそのような独自拡張をサポートすべきであり、World Wide Webのようなオープンな(マルチユーザーエージェント)環境に独自拡張を公開べきではありません。
なぜ?
接頭辞の要件は、標準CSSへの将来の追加と競合することなく閉じた環境における特殊な機能の出荷を可能にします。オープン系への公開の制限は、誤って公衆CSS環境に標準化されない拡張に依存させることを防ぐものです。たとえ機能がウェブで結局は使用されることを意図されても、その機能がまだ標準化されていない場合、依然としてウェブに公開されるべきではありません。
3.2.3. 市場の圧力とデファクトスタンダード
まだ機能が不安定である(すなわち仕様がまだ安定してない)場合、
-
少なくとも3つのユーザーエージェントは、機能を実装し(またはユーザーエージェントが他の規則を破壊しかつ不安定または量産リリースでその他の非標準的な機能を出荷し)、
-
かつ実装がラフな相互運用性を持ち、
-
かつCSSワーキンググループがこの機能が存在しかつ公開されるべきであるを合意を記録している場合、
実装者は、広範なリリースビルドで接頭辞なしの機能を出荷してもよいものです。ラフな相互運用性は、差異があるにも関わらず、主観的判断によって満たされ、実装がかなりの数のユースケースに対する量産ウェブサイトで使用されるのと十分に類似します。
しかし、CSSワーキンググループは依然としてベンダー間の連携を確保するために、および各ベンダーからのCSS専門家による健全性審査を確実にするために相談しなければならないことに注意してください。特に、詳細は標準レビュープロセスを通して解決されていないため、ラフな相互運用性は依然として、通常エッジケース(またはそれほどエッジでないケース)において痛みを伴う相互運用性の欠如を意味することにも注意してください。
3.2.3.1. ベンダー接頭辞の不安定な機能
量産リリースでウェブに標準化過程の不安定な機能として公開する場合、実装は機能に対するベンダー接頭辞ありと接頭辞なしの両方の構文をサポートすべきです。機能が安定しており、かつ実装が相互運用可能な動作と一致するように更新される時点で、ベンダー接頭辞構文に対するサポートは削除されるべきです。
なぜ?
これは、著者がすべての実装を対象にする接頭辞なしの構文を使用することができるが、必要な場合に、著者が標準またはバグ修正プロセスを通して解決する実装間で互換性の問題を回避するために特定の実装を対象にすることができるよう推奨します。接頭辞構文のみがサポートされる場合の局面の欠如は、ベンダー接頭辞構文のみが記述されているスタイルシートのリスクを低減します。これは、既存のコンテンツを破壊するより低いリスクとともに、ひとたび機能が安定すればユーザーエージェントベンダーに接頭辞構文を順に引退させることを可能にします。また、その構文に依存によるコンテンツのせいで、他のベンダーの接頭辞をもつ機能をサポートするために一部のベンダーによって折に触れて感じる必要性を低減します。
著者に不安定な機能を促進する誰もが機能の標準的な接頭辞なし構文を使用する介して機能を実証すべきであり、実装の違いを中心に作業以外の目的のためのベンダー接頭辞構文を使用するよう勧めるのを回避する。
3.2.3.2. CSSのオープン性の維持
技術としてCSSのオープンな性質を維持するために、ベンダーは、出荷するすべての機能を他の実装者が自由に実装すること可能にすべきです。この目的のために、ベンダーは、そのような機能の標準化を完了するために仕様編集およびテストするリソースを提供すべきであり、そして機能を出荷する競合他社に他の障害物(たとえば、プラットフォーム依存性、ライセンスの制限)を避けるべきです。
3.3. CRレベル機能の実装
仕様が勧告候補の段階に達すると、実装者は、実装者が仕様に従って正しく実装されることを示すことができる任意の勧告候補レベルの機能の接頭辞のない実装を公開すべきであり、その機能の接頭辞変異形を公開すべきではありません。
実装を問わずCSSの相互運用性を確立し維持するために、CSSワーキンググループは、非実験的なCSSレンダラが、任意のCSS機能の接頭辞なしの実装を公開する前に、実装レポート(そして、もし必要なら、実装レポートで使用したテストケース)をW3Cへ提出することを要請します。W3Cへ提出されたテストケースは、CSSワーキンググループによるレビューと修正の対象となります。
テストケースと実装レポートの提出に関する詳細情報は、CSSワーキンググループのウェブサイト(http://www.w3.org/Style/CSS/Test/)にあります。質問は直接public-css-testsuite@w3.orgメーリングリストまで。
4. 索引
以下の節は非規範的です。
4.1. 用語索引
- actual value
- advance measure
- after-change style
- an+b
- anonymous
- anonymous box
- atomic inline
- atomic inline box
- at-rule
- automatic minimum size
- backdrop
- bearing angle
- before-change style
- bfc
- block
- block box
- block container
- block container box
- block formatting context
- blockification
- blockify
- block-level
- block-level content
- box
- box tree
- cancel
- canonical unit
- cascade
- cascaded value
- ch
- cm
- code point
- color stop
- color stop list
- combined duration
- compatible units
- complete
- completed transition
- component value
- computed value
- concrete object size
- conditional group rule
- constraint rectangle
- contain constraint
- containing block
- containing block chain
- cover constraint
- cross axis
- cross-axis
- cross-axis baseline set
- cross dimension
- cross-end
- cross size
- cross-size
- cross size property
- cross-start
- css-wide keywords
- current input code point
- current value
- declaration
- declared value
- default object size
- default sizing algorithm
- deg
- digit
- display type
- dpcm
- dpi
- dppx
- element
- element tree
- em
- end time
- end value
- environment encoding
- eof code point
- ex
- first cross-axis baseline set
- first main-axis baseline set
- flex container
- flex formatting context
- flex item
- flex layout
- flex line
- font-relative lengths
- formatting context
- function
- functional notation
- get an encoding
- grad
- gradient box
- gradient line
- hex digit
- hz
- ident
- identifier
- ignored
- image resolution
- !important
- important
- in
- in-flow
- inherit
- inheritance
- inherited property
- inherited value
- initial containing block
- initial value
- inline
- inline box
- inline formatting context
- inline-level
- inline-level content
- inlinification
- inlinify
- inner display type
- integer
- intrinsic aspect ratio
- intrinsic dimensions
- intrinsic height
- intrinsic resolution
- intrinsic width
- invalid
- invalid image
- khz
- last cross-axis baseline set
- last main-axis baseline set
- letter
- local coordinate system
- local url flag
- longhand
- longhand property
- lowercase letter
- main axis
- main-axis
- main-axis baseline set
- main dimension
- main-end
- main-size
- main size
- main size property
- main-start
- matching transition delay
- matching transition duration
- matching transition-property value
- matching transition timing function
- max cross size property
- maximum allowed code point
- max main size property
- min cross size property
- min main size property
- mm
- ms
- multicol element
- multi-column element
- name code point
- name-start code point
- newline
- next input code point
- non-ascii code point
- non-printable code point
- number
- object size negotiation
- order-modified document order
- origin
- outer display type
- out-of-flow
- parse a comma-separated list of component values
- parse a component value
- parse a declaration
- parse a list of component values
- parse a list of declarations
- parse a list of rules
- parse a rule
- parse a stylesheet
- parse something according to a css grammar
- pc
- percentage
- pixel unit
- pt
- px
- q
- qualified rule
- rad
- reconsume the current input code point
- reference pixel
- rem
- reset-only sub-property
- reversing-adjusted start value
- reversing shortening factor
- run-in
- run-in box
- running transition
- s
- scoped
- scoping element
- serialize an <an+b> value
- shorthand
- shorthand property
- simple block
- spanner
- spanning element
- specified size
- specified value
- start time
- start value
- string
- style change event
- sub-property
- surrogate code point
- turn
- uppercase letter
- used value
- user coordinate system
- valid image
- vh
- viewport-percentage lengths
- vmax
- vmin
- vw
- whitespace
animations、backgrounds、selectors、style-attr、conditional、namespaces、ui、css21およびcolorから用語をエクスポートし、我々はこのインデックスを完全に生成することができます。また、まだ安定したリンクを持たないものを再発行して、そのリンクを我々はここにリンクすることができます。
4.2. セレクタ索引
パターン | 意味 | 説明されるセクション | 最初に定義されたレベル |
---|---|---|---|
| すべての要素 | 全称セレクタ | 2 |
E | 型Eの要素 | 型セレクタ | 1 |
E[foo] | "foo"属性をもつE要素 | 属性セレクタ | 2 |
E[foo="bar"] | "foo"属性値が厳密に"bar"と等しいE要素 | 属性セレクタ | 2 |
E[foo~="bar"] | "foo"属性値が空白区切りスペースのリストであり、そのうちのいずれかが"bar"と厳密に等しいE要素 | 属性セレクタ | 2 |
E[foo^="bar"] | "foo"属性値が厳密に"bar"で開始するE要素 | 属性セレクタ | 3 |
E[foo$="bar"] | "foo"属性値が厳密に"bar"で終了するE要素 | 属性セレクタ | 3 |
E[foo*="bar"] | "foo"属性値がサブ文字列"bar"を含むE要素 | 属性セレクタ | 3 |
E[foo|="en"] | "foo"属性が(左から)"en"で始まる値のハイフン区切りのリストを持つE要素 | 属性セレクタ | 2 |
E:root | 文書のルートをとる、E要素 | 構造擬似クラス | 3 |
E:nth-child(n) | E要素の親に属するn番目の子となる、E要素 | 構造擬似クラス | 3 |
E:nth-last-child(n) | E要素の親に属する最後から数えてn番目の子となる、E要素 | 構造擬似クラス | 3 |
E:nth-of-type(n) | E要素型のn番目の兄弟となる、E要素 | 構造擬似クラス | 3 |
E:nth-last-of-type(n) | E要素型の最後から数えてn番目の兄弟となる、E要素 | 構造擬似クラス | 3 |
E:first-child | E要素の親に属する最初の子となる、E要素 | 構造擬似クラス | 2 |
E:last-child | E要素の親に属する最後の子となる、E要素 | 構造擬似クラス | 3 |
E:first-of-type | E要素型の最初の兄弟となる、E要素 | 構造擬似クラス | 3 |
E:last-of-type | E要素型の最後の兄弟となる、E要素 | 構造擬似クラス | 3 |
E:only-child | E要素の親に属する唯一の子となる、E要素 | 構造擬似クラス | 3 |
E:only-of-type | E要素型の唯一の兄弟となる、E要素 | 構造擬似クラス | 3 |
E:empty | (テキストノードを含めて)子を持たないE要素 | 構造擬似クラス | 3 |
E:link E:visited | 未訪問(:link)である、または訪問済み(:visited)であるハイパーリンクのソースアンカーであるE要素 | リンク疑似クラス | 1 |
E:active E:hover E:focus | 特定のユーザーアクション状態にあるE要素 | リンクアクション疑似クラス | 1および2 |
E:target | 参照URIのターゲットであるE要素 | ターゲット擬似クラス | 3 |
E:lang(fr) | 言語"fr"における型Eの要素(言語情報の決定方法は文書言語が規定する) | :lang()疑似クラス | 2 |
E:enabled E:disabled | 有効または無効であるユーザーインターフェイス要素E | UI要素状態疑似クラス | 3 |
E:checked | チェックされるユーザーインターフェース要素E(たとえばラジオボタンまたはチェックボックス) | UI要素状態疑似クラス | 3 |
E::first-line | E要素の最初の整形された行 | ::first-line疑似要素 | 1 |
E::first-letter | E要素の最初の整形された文字 | ::first-letter疑似要素 | 1 |
E::before | E要素の前の生成コンテンツ | ::before疑似要素 | 2 |
E::after | E要素の後の生成コンテンツ | ::after疑似要素 | 2 |
E.warning | クラスが"warning"であるE要素(どのクラスが決定されるかは文書言語が規定する) | クラスセレクタ | 1 |
E#myid | "myid"と等しいIDをもつE要素。 | IDセレクタ | 1 |
E:not(s) | 単純セレクタsにマッチしないE要素 | 否定擬似クラス | 3 |
E F | E要素の子孫であるF要素 | 子孫結合子 | 1 |
E > F | E要素の子であるF要素 | 子結合子 | 2 |
E + F | E要素の直後にあるF要素 | 隣接兄弟結合子 | 2 |
E ~ F | E要素の後にあるF要素 | 一般兄弟結合子 | 3 |
4.3. @規則索引
4.4. プロパティ索引
Bikeshed should be amended shortly to allow auto-genning the propdef index.
4.5. 値索引
Cross-linking from CSS Backgrounds and Borders is kinda broken atm...
- all
- alternate
- alternate-reverse
- <angle>
- <angle>? flip
- armenian
- auto
- ''auto''!!'border-image-width' value
- 'background-clip' value
- 'background-image' value
- 'background-origin' value
- 'background-position' value
- 'background-repeat' value
- backwards
- balance
- balance-all
- baseline
- block
- border-box
- ''border-box''!!'background-clip' value
- ''border-box''!!'background-origin' value
- 'border-image-repeat' value
- 'border-image-width' value
- 'border-style' value
- both
- bottom
- ''bottom''!!'background-position' value
- center
- ''center''!!'background-position' value
- ch
- circle
- close-quote
- closest-corner
- closest-side
- cm
- <color>
- color
- color-burn
- color-dodge
- column
- column-reverse
- contain
- content
- content-box
- ''content-box''!!'background-clip' value
- contents
- cover
- crisp-edges
- <custom-ident>
- darken
- dashed
- decimal
- decimal-leading-zero
- deg
- difference
- disc
- dotted
- double
- dpcm
- dpi
- dppx
- ease
- ease-in
- ease-in-out
- ease-out
- ellipse
- em
- end
- <ending-shape>
- ex
- exclusion
- farthest-corner
- farthest-side
- fill
- fill-box
- fixed
- flex
- <‘flex-basis’>
- flex-end
- <‘flex-grow’>
- <‘flex-shrink’>
- flex-start
- font-feature-settings
- font-variant
- forwards
- from-image
- georgian
- grad
- groove
- hard-light
- hidden
- high-quality
- hue
- hz
- in
- infinite
- inherit
- initial
- inline
- inline-block
- inline-flex
- inline-table
- inset
- <integer>
- invert
- <keyframes-name>
- khz
- left
- ''left''!!'background-position' value
- <length>
- [ <length> | <percentage> ]{2}
- lighten
- linear
- list-item
- local
- lower-greek
- lower-latin
- lower-roman
- luminosity
- mm
- ms
- multiply
- no-close-quote
- none
- ''none''!!'background-image' value
- ''none''!!'border-style' value
- none!!font-variant
- no-open-quote
- ''no-repeat''!!'background-repeat' value
- normal
- normal!!font-feature-settings
- normal!!font-variant
- nowrap
- <number>
- open-quote
- outset
- overlay
- ''padding-box''!!'background-clip' value
- ''padding-box''!!'background-origin' value
- paused
- pc
- pixelated
- pixel unit
- <position>
- pt
- px
- q
- rad
- rem
- ''repeat''!!'background-repeat' value
- ''repeat''!!'border-image-repeat' value
- repeat-x
- repeat-y
- <resolution>
- reverse
- ridge
- right
- ''right''!!'background-position' value
- ''round''!!'background-repeat' value
- ''round''!!'border-image-repeat' value
- row
- row-reverse
- running
- s
- saturation
- scale-down
- screen
- scroll
- scroll-position
- <size>
- snap
- soft-light
- solid
- space-around
- ''space''!!'background-repeat' value
- space-between
- ''space''!!'border-image-repeat' value
- square
- start
- step-end
- step-start
- stretch
- table
- table-caption
- table-cell
- table-column
- table-column-group
- table-footer-group
- table-header-group
- table-row
- table-row-group
- <time>
- top
- ''top''!!'background-position' value
- turn
- unset
- upper-latin
- upper-roman
- vb
- vh
- vi
- view-box
- vmax
- vmin
- vw
- wrap
- wrap-reverse
5. 謝辞
Special thanks to Florian Rivoal for creating the initial draft of the §3.2.1 Experimentation and Unstable Features recommendations.