文字と活字ケース詳細

 
  
ホーム > CSS2 Note > CSS2の概要 > 構文 > 文字と活字ケース詳細

文字と活字ケース詳細

CSS2の識別子(identifiers)には、セレクタに含まれる要素名、クラス名、ID名などがあり、使用可能な文字は、[a-zA-Z0-9]の範囲にある文字、[ISO10646]で161以上のコードが振られている文字(16進数コード)、それにハイフン[-]のみに限られます。識別子の先頭文字にハイフン[-]や数字を使用することはできません。

また、識別子は、先頭文字やそれに続く文字にエスケープ文字([\'][\"][\{]など)や[ISO10646]の16進数コード番号による参照も含むことができます。たとえば'{'は特別な役割を持つ区切り文字ですが、[ISO10646]の16進数コードでそれをあらわす[\7B]は先頭文字、またそれに続く文字に使用できます。同様に、[\32]は先頭文字に使えますが[2]は使用できません。

CSS2では、バックスラッシュ[\]に3種類のエスケープ効果があります。

まず、文字列の中では、後ろに改行が続くバックスラッシュ[\]は無視されます。文字列に改行を含めたい場合は[\A]を使用します。バックスラッシュ自体を含めたい場合には[\\]と記述します。また、体裁上文字列を複数行にわたって記述したい場合などには改行文字自体をバックスラッシュ[\]でエスケープします。以下のセレクタは同じ意味を持ちます。
a[title="a not s\
o very long title"] {...}

a[title="a not so very long title"] {...}

次に、CSSで特別扱いされている文字からその特別な意味を取り除く効果があります。16進数値以外のあらゆる文字からは、バックスラッシュ[\]でエスケープすることによって特別な意味を取り除くことができます。たとえば["\""]は単独の二重引用符から成る文字列を示します。

最後に、文書作成者が容易に打ち出せない文字を参照することもできます。この場合、バックスラッシュ[\]の後ろには、[ISO10646]の文字コードを表す16進数を続けて記述します。16進数の次に紛らわしい数字や文字が続く場合、コードの終端を明確にする必要があります。それには2通りの方法があります。
半角スペース(あるいは他の空白文字)で示す。[\26 B] (&B)
6桁に満たない16進数でも上位桁を補う。[\000026B] (&B)
実際にはこれら2つの方法を組み合わせて使うとよいでしょう。16進数の後では空白文字が1つだけ無視されるので、数値エスケープ文字の後に本当のスペースを挿入するには、スペース自体をエスケープするか、スペースをふたつ続けなければならないことに注意しなければなりません。
 
トップページ CSS2 Note ページトップ
 2006/05/11発行 2008/01/01更新