[1] [DFN[[RUBYB[[[型選択子]]]@en[type selector]]]]は、[[CSS修飾名]]によって[[マーク付け言語]]の[[要素型]]の名前を表したものです [SRC[>>2]]。 * 仕様書 [REFS[ - [2] [CITE@en[Selectors Level 3]] ([TIME[2011-09-29 22:16:17 +09:00]] 版) ]REFS] * 意味 [3] [[名前空間接頭辞]]を除いた部分 ([CODE(CSS)[[[|]]]] よりも後の部分) は[[要素]]の[[局所名]]を表しています [SRC[>>2]]。 ;; [4] 仕様書は[[名前空間]]に対応していれば [SRC[>>2]] という前提でそうなっていますが、 対応していない場合にどう解釈されるか明示的に規定していません。現実には最新の [[Webブラウザー]]は[[名前空間]]に対応したものばかりなのでもはや規定する意味はないのでしょうが。 [EG[ [10] [CODE(CSS)[h1]] は[[局所名]]が「[CODE[h1]]」である[[要素]]を表します。 ]EG] [5] [[名前空間接頭辞]]は、それに対応すると[[宣言]]された[[名前空間URL]]を表しています。 [[CSS]] では [CODE(CSS)@en[[[@nemaspace]]]] [[@規則]]で、 [[XBL2]] では [CODE(XMLa)@en[[[xmlns]]]] [[属性]]で[[名前空間接頭辞]]を[[宣言]]できます。 [EG[ [13] [PRE(CSS example code)[ @namespace hoge 'http://hoge/'; hoge|fuga { color: blue } ]PRE] ... は [CODE(URI)@en[http://hoge/]] という[[名前空間]]の[[局所名]] [CODE[fuga]] の[[要素]]の色を指定しています。 ]EG] [7] [[名前空間接頭辞]]が[[空文字列]]であれば、[[名前空間]]なし ([[null名前空間]]) を表します [SRC[>>2]]。 [EG[ [14] [CODE(CSS)@en[|h1]] は[[null名前空間]]の[[局所名]] [CODE(CSS)[h1]] の[[要素]]を表しています。 ]EG] [8] [[名前空間接頭辞]]が [CODE(CSS)[[[*]]]] であれば、任意の[[名前空間]]を表します。 [[null名前空間]]もこれに含まれます。 [SRC[>>2]] [EG[ [15] [CODE(CSS)[*|h1]] は [[HTML]] や [[XHTML2]] やその他任意の[[名前空間]]の [CODE(HTML)@en[h1]] [[要素]]を表しています。 ]EG] [9] [[名前空間接頭辞]]も [CODE(CSS)[[[|]]]] もなければ、[[既定名前空間]]が[[宣言]]されていればその[[名前空間]]を、 [[宣言]]されていなければすべての[[名前空間]] ([CODE(CSS)[[[*]]]] と同じ。) を表します。 [SRC[>>2]] [EG[ [16] [PRE(CSS example code)[ h1 { color: blue } ]PRE] ... はすべての[[名前空間]]の [CODE(CSS)[h1]] [[要素]]を表しています。一方 [PRE(CSS example code)[ @namespace 'http://www.w3.org/1999/xhtml'; h1 { color: blue } ]PRE] ... は [[HTML]] の [CODE(HTMLe)@en[h1]] [[要素]]だけを表しています。 ]EG] * 妥当性 [6] [[宣言]]されていない[[名前空間接頭辞]]を使うと[[非妥当]]となります [SRC[>>2]]。 * 大文字と小文字 [11] [[局所名]]の[[大文字]]と[[小文字]]の解釈は[[マーク付け言語]]に依存します。 [[HTML]] では [[ASCII大文字・小文字不区別]]です。 [[XML]] では[[大文字]]と[[小文字]]を区別します。 [12] [[名前空間接頭辞]]は[[大文字]]と[[小文字]]を区別します。 * 関連 [17] [[局所名]]のかわりに [CODE(CSS)[[[*]]]] を指定したものは[[普遍選択子]]と呼ばれます。