class属性
属性名 | バージョン | 属性値 | 既定値 | 備考 |
---|---|---|---|---|
class | 4.0, X1.0, X1.1 | CDATA | #IMPLIED | space-separated list of classes |
この属性が属するグループ …… %coreattrs;
classの解説
class属性は、その要素にクラス名を与えます。IDと異なり、一つの文書内で同じクラス名を何度でも用いることができますし、一つの要素に複数のクラス名をつけることもできます (スペースで区切って列挙します)。これは主にスタイルシートの目標として使われます。
スペースで区切って列挙するデータ型ですが、RFC2070(HTML2.x) では
CLASS
A space separated list of SGML NAME tokens. CLASS names specify that the element belongs to the corresponding named classes. It allows authors to distinguish different roles played by the same tag. The classes may be used by style sheets to provide different renderings as appropriate to these roles.
以上、urn:ietf:rfc:2070 より
と書かれていて、SGML NAME token のリストとされていました。つまり 英数字と . - のみが使えましたが、HTML4 では
class = cdata-list [CS]
This attribute assigns a class name or set of class names to an element. Any number of elements may be assigned the same class name or names. Multiple class names must be separated by white space characters.
という具合に CDATA のリストとされていて、クラス名に使える文字種に制限はないようです。
ただし、HTML 的に制限がないからといって、スタイル言語の側でそれを扱えるのかはまた別の話です。たとえば、CSS1 では数字で始まるクラス名を扱うことができません。JSSS などを考えると、もっといろいろな制限があります。
※中には、クラス名に日本語が使用されているとそれだけでスクリプトエラーを出してしまうブラウザさえあります。具体的には Netscape4 なのですが、どうも JSSS の処理でエラーになるようです。
- 「class属性」にコメントを書く