dl 要素

4.4.8 dl 要素

カテゴリー:
フロー・コンテント
この要素の子が少なくとも 1 つの name-value グループを含む場合: パルパブル・コンテント
この要素を使うことができるコンテキスト:
フロー・コンテントが期待される場所
コンテントモデル:
0 個以上のグループ。それぞれのグループは、1 個以上の dt 要素、それに続いて 1 個以上の dd 要素、そして任意の場所でスクリプトサポート要素から構成される。
コンテント属性:
グローバル属性
text/html におけるタグの省略:
どちらのタグも省略できません。
指定可能な ARIA role 属性 の値:
あらゆるロールの値
指定可能な ARIA ステートとプロパティ属性:
グローバル aria-* 属性
許可ロールに該当する aria-* 属性
DOM インタフェース:
interface HTMLDListElement : HTMLElement {};

dl 要素は、0 個以上の name-value グループから構成される関連リスト(記述リスト)を表します。それぞれのグループは、1 個以上の名前(dt 要素)と、それに続き、1 個以上の値(dd 要素)から構成されます。dtdd 要素以外のノードはすべて無視されます。ひとつの dl 要素の中には、それぞれの名前に対応する dt 要素を 1 つしか入れるべきではありません。

name-value グループとは、用語とその定義、メタデータ・トピックとその値、質問と回答、そのほか name-value データのグループが考えられます。

グループ内の値は選択肢になります。複数の段落でひとつの値を形成する場合、その段落はすべて同じ dd 要素の中に入れなければいけません。

グループのリストの順番やグループ内の名前と値の順番は、意味を持つことがあります。

dl 要素が空なら、それにはグループがありません。

もし dl 要素が、子として 1 つ以上の非ホワイトスペース Text ノード、または、dtdd 以外の要素を含んでいるなら、その Text ノードや要素は、それらの子孫も含めて(dtdd を含んでいたとしても)、その dl 要素のグループを形成するものにはなりません。

もし dl 要素が 1 つ以上の dt 要素を子に持ちながらも、dd 要素を子に持たなければ、それは、名前はあるけれども値がない 1 つのグループから構成されることになります。

もし dl 要素が 1 つ以上の dd 要素を子に持ちながらも、dt 要素を子に持たなければ、それは、値はあるけれども名前がない 1 つのグループから構成されることになります。

dl 要素の最初の子は dt 要素か dd 要素となりますが、それが dd 要素なら、その最初のグループはそれに対応する名前を持ちません。

dl 要素の最後の子は dt 要素か dd 要素となりますが、それが dt 要素なら、その最後のグループはそれに対応する値を持ちません。

dl 要素がそのコンテントモデルに一致しないとき、それは、誤って、dt 要素の場所に dd 要素が使われている、またはその逆である傾向が良く見受けられます。準拠チェッカーはそのようなミスを見つけ出すことができ、マークアップの正しい使い方をウェブ制作者に助言することができるでしょう。

次の例では、1 つのエントリ("著者")が 2 つの値("ジョン" と "ルーク")に結び付けられています。

<dl>
 <dt> 著者
 <dd> ジョン
 <dd> ルーク
 <dt> 編集者
 <dd> フランク
</dl>

次の例では、1 つの定義がふたつの用語に結び付けられています。

<dl>
 <dt lang="en-US"> <dfn>color</dfn> </dt>
 <dt lang="en-GB"> <dfn>colour</dfn> </dt>
 <dd> (人間においては)3 つの異なる視界フィルター
 分析を区別できる目の微細構造の能力からもたらされる
 知覚。 </dd>
</dl>

次の例は、ちょっとしたメタデータのマークアップに dl 要素を使った例を示しています。この例の最後では、1 つのグループが 2 つのメタデータラベル("著者" と "編集者")と 2 つの値("ロバート・ロスマン" と "ダニエル・ジャクソン")を持っています。

<dl>
 <dt> 最終更新日時 </dt>
 <dd> 2004-12-23T23:33Z </dd>
 <dt> 推奨更新間隔 </dt>
 <dd> 60秒 </dd>
 <dt> 著者 </dt>
 <dt> 編集者 </dt>
 <dd> ロバート・ロスマン </dd>
 <dd> ダニエル・ジャクソン </dd>
</dl>

次の例では、dl 要素を、指示のセットを与えるために使っています。ここにある指示の順番は重要です(これまでの例では、ブロックの順番は重要ではありませんでした)。

<p>勝利ポイントの決め方は次のとおりです (最初に一致した条件を
採用します):</p>
<dl>
 <dt> ぴったり 5 個の金貨を持っている場合 </dt>
 <dd> 5 個の勝利ポイントをゲット </dd>
 <dt> 1 個以上の金貨と 1 個以上の銀貨を持っている場合 </dt>
 <dd> 2 個の勝利ポイントをゲット </dd>
 <dt> あなたが 1 個以上の銀貨を持っている場合 </dt>
 <dd> 1 個の勝利ポイントをゲット </dd>
 <dt> 該当がない場合 </dt>
 <dd> 勝利ポイントはゲットできません </dd>
</dl>

次は、dl 要素が用語集として使われています。単語が定義されていることを示すために dfn 要素を使っている点に注目してください。

<dl>
 <dt><dfn>アパートメント</dfn> [名]</dt>
 <dd>1 個以上の COM オブジェクトをグループ化する
 実行コンテキスト。</dd>
 <dt><dfn>フラット</dfn> [名]</dt>
 <dd>空気が抜けてしぼんだタイヤ。</dd>
 <dt><dfn>ホーム</dfn> [名]</dt>
 <dd>ユーザーのログインディレクトリ。</dd>
</dl>

dl 要素は会話をマークアップするには不適切です。後述の会話のマークアップ方法の例にて示されています。


※ 原文:http://www.w3.org/TR/2014/REC-html5-20141028/grouping-content.html#the-dl-element