AI先生のロボットキャラクター
第3章 - セクション4

定義リスト

用語と説明をセットで表現するdl, dt, dd要素の使い方

男子生徒のアイコン

今まで習ったulとolのリストは分かったんですが、用語集やQ&Aみたいに「用語」と「説明」をセットで表示したい場合はどうすればいいんですか?

AI先生のアイコン

実は、そういった用途に特化した「定義リスト」というものがあるんだ。<dl>(description list)、<dt>(description term)、<dd>(description details)を使って表現するよ。

女子生徒のアイコン

定義リスト?聞いたことがない名前です。どんな時に使うんですか?

AI先生のアイコン

用語集、Q&A、仕様書、プロフィール情報など、「見出し」と「詳細」の組み合わせで情報を表現したい場面で活躍するんだ。辞書のように、項目名とその説明を明確に分けて表示できるよ。

定義リストの基本構造

定義リストは、用語(term)とその説明(description)をペアで管理する特別なリスト形式です。一般的なリストとは異なり、項目と説明が明確に区別されています。

定義リストの基本構造
<dl> ← 定義リスト全体
  <dt>HTML</dt> ← 用語
  <dd>ウェブページの構造を定義する言語</dd> ← 説明

  <dt>CSS</dt>
  <dd>スタイルを装飾する言語</dd>
</dl>
<dl>
定義リスト全体を囲む
親要素
<dt>
定義する用語や
項目名を表現
<dd>
用語の詳細説明や
定義内容を表現

基本構造のポイントと作成ルール

定義リストを正しく作成するための重要なポイントと実装ルールを理解しましょう。

基本構造のポイント

  • <dl>タグ(赤色) Definition List(定義リスト)全体を囲む親要素
  • <dt>タグ(緑色) Definition Term(定義用語)項目名や見出しを表現
  • <dd>タグ(青色) Definition Description(定義説明)用語の詳細説明を表現
  • 自動スタイル ブラウザが用語を太字、説明をインデントで自動表示

作成ルール

  • dl内に配置 <dt><dd>は必ず<dl>要素の中に記述
  • ペアで管理 <dt>(用語)の後に<dd>(説明)を配置する基本パターン
  • 複数説明可能 一つの<dt>に対して複数の<dd>で詳細説明が可能
  • 閉じタグ必須 すべてのタグは適切に開始と終了を記述

これらのポイントやルールを守ることで、用語と説明の関係性が明確で、意味的に正しい構造を作成できます。

定義リストを試してみよう

以下のエディターで定義リストの基本的な書き方を試してみてください。

  • 用語と説明の組み合わせを変更してみると、定義リストの便利さがより理解しやすくなります。
HTMLコード:
プレビュー:

様々な定義リストのパターン

パターン1:用語集・辞書形式

プログラミング用語やビジネス用語の説明に最適です。

HTMLコード:
プレビュー:

パターン2:Q&A・FAQ形式

よくある質問と回答の組み合わせに効果的です。

HTMLコード:
プレビュー:

パターン3:プロフィール・仕様書形式

人物紹介や製品仕様などの情報整理にも効果的です。

HTMLコード:
プレビュー:

パターン4:複数説明の定義リスト

一つの用語に対して複数の説明を記述することも可能です。

HTMLコード:
プレビュー:

分かりやすい「定義リスト」を作る3つの原則

定義リストは便利ですが、ただペアを作るだけでは逆に分かりにくくなります。 読み手にとって親切なリストを作るには、以下の3つの原則を意識するのが大切です。

原則1:関係性を明確にする

用語と説明の関係が直感的に分かるように、適切なペアリングを行いましょう。「用語 → 説明」の関係が論理的で、読み手が理解しやすいような組み合わせが基本です。

  • 良い例: 「HTML」→「ウェブページの構造を定義する言語」
  • 悪い例: 「HTML」→「プログラミングは楽しい」(関係性が不明確)

原則2:説明を適切な長さにする

説明が長すぎると読みづらくなり、短すぎると理解できません。1〜3行程度で要点を伝えることを意識し、詳細が必要な場合は複数の<dd>で分割しましょう。

  • 推奨: 簡潔で分かりやすい説明
  • 注意: 1つの<dd>が5行以上になる場合は、内容を分割することを検討しましょう

原則3:同じレベルの項目を統一する

同じ定義リスト内では、用語のレベル感や説明の詳しさを揃えましょう。例えば、「具体的な技術名」と「抽象的な概念」が混ざっていると、構造が歪んで見えます。

  • 良い例: 「HTML」「CSS」「JavaScript」(同じ技術レベル)
  • 悪い例: 「HTML」「CSS」「Webサイト作成の楽しさ」(レベル感が違う)
リストの使い分けガイド

適切なリストタイプを選ぶことで、情報が整理され読みやすいWebページが作成できます。

  • 箇条書きリスト(<ul> 順序に関係ない項目の列挙(買い物リスト、機能一覧など)
  • 番号付きリスト(<ol> 順序が重要な項目の列挙(手順、ランキングなど)
  • 定義リスト(<dl> 用語と説明のペア関係(用語集、FAQ、プロフィールなど)

判断基準: 単純な列挙なら<ul>、順序が重要なら<ol>、「見出し」と「内容」の関係があるなら<dl>を選択しましょう。

理解度チェッククイズ

AI先生のアイコン

定義リストの特徴と使用方法を理解できたか、クイズで確認してみましょう。

定義リストミニクイズ

定義リスト全体を囲むHTMLタグはどれですか?
<dl>
<dt>
<dd>
<def>
次のHTMLコードで「①」に入るべき正しいタグはどれですか?
<dl>
①プログラミング①
<dd>コンピューターに指示を与える作業</dd>

①Web開発①
<dd>ウェブサイトやアプリを作る技術</dd>
</dl>
<dt></dt>
<li></li>
<term></term>
<def></def>
用語の説明や詳細を表すタグはどれですか?
<dl>
<dt>
<dd>
<desc>
次のコードで誤りがある部分はどれですか?
<dl>
<dd>HTML</dd>
<dt>ウェブページの構造を定義する言語</dt>

<dd>CSS</dd>
<dt>ウェブページを装飾する言語</dt>
</dl>
<dl>タグの位置
<dt>と<dd>の順序
タグの閉じ方
インデントの仕方
一つの用語に対して複数の説明を記述することは可能ですか?
可能です
不可能です
特別な属性が必要です
ブラウザによって異なります
次のコードを見て、このコードが表現している内容として最も適切なものはどれですか?
<dl>
<dt>Q. HTMLの学習は難しいですか?</dt>
<dd>A. 基本から順序立てて学べば初心者でも習得できます</dd>

<dt>Q. どのくらいの期間で覚えられますか?</dt>
<dd>A. 毎日1時間程度の学習で、1〜2ヶ月で基本をマスターできます</dd>
</dl>
プロフィール情報
用語集
FAQ(よくある質問)
手順書

まとめ

男子生徒のアイコン

定義リストの使い方がよく分かりました!辞書やFAQページを作る時に絶対使います。

女子生徒のアイコン

複数の説明を書けるのも便利ですね。一つの言葉をいろんな角度から説明できる。

AI先生のアイコン

そういうこと!定義リストは、情報を「構造的」に整理するHTMLの真髄を表している。ただ見た目を作るだけでなく、情報に意味を与えることで、人にもコンピューターにも分かりやすいページになるんだ。次は、より複雑な情報を整理する「表」について学んでいこう。

定義リスト活用のポイント
  • 適切な構造 <dl>で全体を囲み、<dt><dd>をペアで使用
  • 意味の明確化 用語と説明の関係を視覚的・意味的に区別
  • 複数説明対応 一つの用語に複数の<dd>で詳細説明が可能
  • 様々な用途 用語集、FAQ、プロフィール、仕様書など幅広く活用
  • 情報設計 「見出し」と「内容」の関係がある情報に最適

次回は「表の基本」について学習します。行と列で構成される、より複雑な情報構造を表現する方法を習得しましょう!

学習チェック

このレッスンを理解できたら「完了」をクリックしてください。
後で見直したい場合は「未完了に戻す」で進捗をリセットできます。

レッスン完了!🎉

お疲れさまでした!