制作者(webmaster)
野嵜健秀(Takehide Nozaki)
公開
2001-12-24
改訂
2004-11-18

dl要素

dt要素dd要素をまとめて、dl要素として全体を括ります。「定義リスト」と呼ばれるものの、必ずしも「定義」に限定されません。

汎用属性のclass、id、title、style、lang、dir(、xml:lang)が使用可能です。

Mozilla Classic(4.x以前のNetscape Navigator)の誤った解釈

Cascading Style Sheetsの指定で、dl要素の左マージンを0と指定しても、Mozilla Classicは、勝手に左マージンを附けてHTML文書を整形します。左マージンの値を0以上に指定すると、Mozilla Classic固有のスタイルシートのデフォルト値に指定された数値を加算して、HTML文書を整形します。

「Mozilla ClassicはHTML文書を頭から読み込み、出現したタグによって、続いて出現する文字列の位置を決定するのではないか」「Mozilla ClassicはHTMLを自分専用のレンダリング制御言語と看做して解釈するのではないか」と推測される理由です。

また、このMozilla Classicの挙動を根拠に、「dlは文字列の左に隙間を開けるためのもの」と信じて、dlの直下にテキストを記述する人があります。しかし、「文字列の左に隙間を開ける」目的のためにol/ul/dlの3つの要素が存在する必然性は全く存在しませんし、それらの中から特定の一つを選び取り、他の二つを排除しなければならない理由も全く存在しません。

リスト関係の要素(dl/ul/ol)は、レンダリング制御のための「物理要素」ではありません。

「定義リスト」とその中身

「定義リスト」の定義は、HTML 4.01の仕様書には以下の様にあります。

Definition lists vary only slightly from other types of lists in that list items consist of two parts: a term and a description. The term is given by the DT element and is restricted to inline content. The description is given with a DD element that contains block-level content.

dtとddの定義は以下の様に定められ、それ以上の事は何も制約がありません

dtはterm、ddはdescriptionと呼ばれますが、辞書的な意味に基いて解釈することはできません。dl-dt-ddは、「定義リスト」と呼ばれますが、定義集以外に使用しても全く問題ありません。

サイトのメニュー。
CGギャラリー。dt要素に画像。dd要素にその説明を記述。
リンク集。dt要素にリンク先のアンカー、dd要素にそのリンク先の説明を記述。
対談。dt要素に話者。dd要素に話した内容を記述。
日記。dt要素に日付。dd要素にその日あった事やコメント等を記述。