[2] [DFN[CSS [RUBYB[修飾名]@en[qualified name]]]]は、[[名前空間]]中に明示的にある (関連付けられている)
名前です [SRC[>>1]]。

* 仕様書

[REFS[
- [1] [CITE@en[CSS Namespaces Module]] ([TIME[2011-09-29 00:20:39 +09:00]] 版) <http://www.w3.org/TR/css3-namespace/#css-qnames>
]REFS]

* 構文

[3] [[CSS]] 構文では、[[CSS修飾名]]は
- 適用範囲内にある[[名前空間接頭辞]]
- [CODE(CSS)[[[|]]]]
- [[局所名]]

... という形で表されます。[[名前空間接頭辞]]がその[[局所名]]の[[名前空間]]を表しています。また、
[[名前空間]]に属さない[[名前]]を表したい時は[[修飾名]]を省略できます ([[空文字列]]にできます)。 [SRC[>>1]]

[4] 文脈によっては、[[名前空間接頭辞]]のかわりに [CODE(CSS)[[[*]]]] を使って任意の[[名前空間]]を表すこともできます。
これには、[[null名前空間]]も含みます。 [SRC[>>1]]

[14] 文脈によっては、[CODE(CSS)[[[*]]]] を[[局所名]]のかわりに使って任意の[[局所名]]を表すこともできます。

;; [13] [CODE(CSS)[[[*]]]] は [[CSS]] の構文上の[[字句]]です。[[名前空間接頭辞]]と[[局所名]]は [[CSS]]
の構文上の[[字句]]としては [CODE[[[<ident>]]]] にあたります。 [CODE(CSS)[\*]] のように [[escape]]
することで値が [CODE[[[*]]]] となることもありますが、それは[[字句]]としての [CODE(CSS)[[[*]]]]
とは異なります。

[5] なお、途中 ([CODE(CSS)[[[|]]]] の前後) に[[空白]]を入れることは認められていません。

[8] なお仕様上は[[生成規則]]が3つ定義されています [SRC[>>1]]:
- [9] [DFN[[CODE@en[[[qname]]]]]] - [[局所名]]または[[名前空間接頭辞]]と[[局所名]]
- [10] [DFN[[CODE@en[[[wqname]]]]]] - [[局所名]]または[[名前空間接頭辞]]と[[局所名]]または [CODE[[[*]]]] と[[局所名]]
- [11] [DFN[[CODE@en[[[wqwname]]]]]] - [[局所名]]または[[名前空間接頭辞]]と[[局所名]]または [CODE[[[*]]]] と[[局所名]]または[[名前空間接頭辞]]と [CODE[[[*]]]] または [CODE[[[*|*]]]]

* 例

[6] [[型選択子]]/[[普遍選択子]]として [[CSS修飾名]]を使えます。この場合[[名前空間接頭辞]]としても[[局所名]]としても
[CODE(CSS)[[[*]]]] を使えます。

[16] [[属性選択子]]として[[CSS修飾名]]を使えます。この場合[[名前空間接頭辞]]としても [CODE(CSS)[[[*]]]]
を使えます。

[15] [CODE(CSS)@en[[[attr()]]]] [[関数]]に[[CSS修飾名]]を使えます。この場合 [CODE(CSS)[[[*]]]]
は使えません。

* 関連

[7] [[名前空間接頭辞]]や[[既定名前空間]]は [[CSS]] では [CODE(CSS)@en[[[@namespace]]]]
[[@規則]]で宣言できます。

[12] [[CSS修飾名]]は[[XML名前空間]]における[[名前空間接頭辞]]と[[局所名]]の組であるところの [[QName]]
に相当するものではありますが、両者に直接の関係はありません。 [[CSS修飾名]]としては [[XML]]
の [CODE[[[Name]]]] でない[[名前空間接頭辞]]や[[局所名]]も使えます。また[[名前空間接頭辞]]は [[XML名前空間]]仕様ではなく、
[[CSS]] などの仕様によって[[解決]]されます。
