Web標準への道
1)id属性、class属性を目的に応じて使い分ける。
id属性・・・要素に固有の名前を割り当てるのに使用。
この名前は、文書内に一意でなければならず、同じid属性値が文書内に複数存在してはならない。
class属性・・・ある要素にひとつ、または複数の分類を指定するのに使用。
同一文書内に同じclass属性が複数存在してもよく、一つの要素に対して複数のclass属性値を指定することができる(複数の値を指定する場合は空白文字で区切る)
また、id属性の属性値はID型、class属性の属性値はCDATA型とそれぞれ異なるデータ型で定義されており、使用できる文字に違いがあるので、注意が必要。
《ID型》識別子をしていするためのデータ型
・アルファベット(A〜Z、a〜z)で開始し任意の数のアルファベット、数字(0〜9)、ハイフン(-)、アンダースコア(_)、コロン(:)、ピリオド(.)のみで記述
《CDATA型》文字データをしているするためのデータ型
・任意の文字列を記述できる。"&"は"&"に置き換える等文字参照で記述する。
2)id属性、class属性の値はCSSセレクタの命名規則に合わせて指定する。
■id属性とclass属性の値には、アルファベット(A〜Z、a〜z)、数字(0〜9)、ハイフン(-)、アンダースコア(_)のみ使用する
■id属性とclass属性の値は、かならずアルファベットから始める
セレクタの命名規則
使用できる文字は以下の通りである
アルファベット(A〜Z、a〜z)、数字(0〜9)、ISO 10646においてU+00A1(161番)以上のコードに該当する文字、ハイフン(-)、アンダースコア(_)
さらに、使用する文字に関して次の規則がある。
(1)名前の先頭を数字、またはハイフン+数字にしてはならない。
(2)上記以外の文字を何らかの理由で使用する場合、次のいずれかの規則に従う。
・該当文字を"¥"でエスケープする
・"¥"に続けて最大6桁の16進数で文字を参照する。この16進数の後に1つ以上の文字が続く場合は、16進数の終わりを明確に示すために、空白文字で区切るか(例:"W&B"→"W\26 B")、6桁の16進数を使用する(例:"W&B"→"W\000026B")