HTMLで利用できる(文書の論理)要素タグはあらかじめDTD(Document Type Definition)で定義されており、新しく要素タグを追加することはできない。 これはHTMLを単純化することによる普及には貢献してきたが、文書構造をきめ細かく指定しようとすると、定義済みの要素タイプだけでは不足することになる。
たとえば、LaTeXには備わっている要約や注釈・脚注、図表領域などはHTMLのDTDだけでは特別な文書ブロックを示すことはできない。
このために、これらは通常の文書ブロック(<div>..</div>)や段落(<p>...</p>)としてマークするしかない。
そこで、HTML4.0では、文書要素に特定の役割を与えるためにclass属性とid属性が導入された。
目次
<タグ名 class="クラス名"> |
たとえば、段落をなしている文章が何かの注釈(note)であることを明示するには次のようにすることが考えられる:
<p class="note"> [注] .....注釈文..... .................... </p>
1つの要素タグに複数のクラス属性を設定するにはクラス名を空白で区切って並べる:
<タグ名 class="クラス名1 クラス名2 ..."> |
クラス属性は複数の要素タグに共通の役割属性を与える目的で使われる。 一方、id属性はある要素タグを文書中でただ一つ特定するためのIDを与えるために使われれる。 つまり、同じid属性を持つ要素タグはHTML文書中には2つ以上表れてはならない。
<タグ名 id="id名"> |
id属性もクラス属性と併せて、スタイルシートで表現を設定することができる。 id名は要素タグのタイプを問わず1つのHTML文書中では一意的でなければならず、重複できない。
たとえば、文章ブロックがページ文書の要約(abstract)であることを明示するには次のようにすることが考えられる:
<div id="abstract"> ...................... .....要約文書......... ...................... </div>