概要
- <dl>要素 は、名前と値のペアリストを表現するためのHTML要素
- <dt>・<dd>要素 を組み合わせて柔軟なレイアウトが可能
- アクセシビリティ向上 や意味付けによる利点
- divの代替 として推奨される理由
- Dungeons & Dragonsの例 で応用の幅広さを実証
説明リスト(Description List)の基本
- <dl>要素 は、名前と値のペア(name–value pairs)を表現するためのHTML要素
- <dt>(description term) は名前、 <dd>(description detail) は値を表現
- <dl>タグ でリスト全体を囲み、各ペアごとに<dt>と<dd>を記述
- 例:
- <dl> <dt>Title</dt> <dd>Designing with Web Standards</dd> </dl>
- 例:
- 複数の値 がある場合、1つの<dt>に対して複数の<dd>を並べて記述可能
- <div>ラッパー で<dt>と<dd>のセットを囲むことで、スタイリングも柔軟に対応
セマンティクス(意味付け)の重要性
- 従来の<div>構造 でもリストは作成可能だが、意味情報が不足
- セマンティックな要素 を使うことで、機械や支援技術が情報構造を正しく解釈可能
- 例:スクリーンリーダーはリストのグループ数や進捗を案内できる
- ユーザーはリスト全体のスキップも容易
- アクセシビリティ向上 や将来的な拡張性の観点から、<dl>の利用が推奨
Dungeons & Dragonsのステータスブロック例
- D&Dのステータスブロック は、典型的なname–valueペアの集合体
- <dl>を複数使い分け ることで、能力値や武器攻撃など異なる情報グループを明確化
- 例:能力値、特性、アクションごとに<dl>を分割
- <div>で<dt>と<dd>をグループ化し、aria-labelで用途を明示
まとめ
- name–valueペア のリストはWeb上でよく使われるパターン
- <dl>・<dt>・<dd> の3要素で、セマンティックなマークアップが可能
- セマンティクス付与 で、ユーザー体験やアクセシビリティが向上
- MDNの<dl>ドキュメント や公式仕様書で詳細を確認推奨
補足
- HTML5以前 は、<dl>は「定義リスト」と呼ばれていた
- <dt>・<dd> も「definition term」「definition detail」と呼ばれていた歴史