10日で覚えるHTMLDay 2: テキストの構造化

Day 2: テキストの構造化

今日学ぶこと

  • 見出し要素(h1〜h6)の適切な使い方
  • 段落とテキストのグループ化
  • テキストの強調と装飾
  • 引用とコードの表示

見出し要素

HTMLには6段階の見出し要素があります。<h1>が最も重要で、<h6>が最も小さい見出しです。

<h1>メインタイトル(h1)</h1>
<h2>セクション見出し(h2)</h2>
<h3>サブセクション(h3)</h3>
<h4>小見出し(h4)</h4>
<h5>詳細見出し(h5)</h5>
<h6>最小見出し(h6)</h6>
flowchart TB
    subgraph Hierarchy["見出しの階層構造"]
        H1["h1: ページタイトル"]
        H2A["h2: セクション1"]
        H2B["h2: セクション2"]
        H3A["h3: サブセクション"]
        H3B["h3: サブセクション"]
    end
    H1 --> H2A
    H1 --> H2B
    H2A --> H3A
    H2B --> H3B
    style H1 fill:#ef4444,color:#fff
    style H2A fill:#f59e0b,color:#fff
    style H2B fill:#f59e0b,color:#fff
    style H3A fill:#22c55e,color:#fff
    style H3B fill:#22c55e,color:#fff

見出しのルール

ルール 説明
h1は1ページに1つ ページの主題を示す
階層をスキップしない h1→h3のように飛ばさない
見た目のために使わない 大きい文字が欲しいだけならCSSを使う
意味を重視する 検索エンジンやスクリーンリーダーが利用する

注意: 見出しレベルをスキップする(例:<h1>の直後に<h3>を使う)のは、HTMLの仕様では禁止されていませんが、アクセシビリティの観点から推奨されません


段落とテキストのグループ化

段落(<p>

テキストの段落には<p>要素を使います。

<p>HTMLは、Webページの構造を定義するマークアップ言語です。</p>
<p>すべてのモダンブラウザがHTMLをサポートしています。</p>

ポイント: HTMLでは、ソースコード内の改行や連続するスペースは無視されます。段落を分けるには<p>タグを使います。

改行(<br>

段落内で改行したい場合は<br>を使います。<br>空要素(終了タグなし)です。

<p>
    東京都渋谷区<br>
    〇〇ビル3F<br>
    株式会社サンプル
</p>

水平線(<hr>

セクション間の区切りには<hr>を使います。これも空要素です。

<p>第1章の内容...</p>
<hr>
<p>第2章の内容...</p>

プリフォーマットテキスト(<pre>

スペースや改行をそのまま保持して表示するには<pre>を使います。

<pre>
    名前:    田中太郎
    年齢:    30歳
    住所:    東京都
</pre>

テキストの強調と意味づけ

強調系の要素

<p>これは<strong>非常に重要な</strong>テキストです。</p>
<p>これは<em>強調された</em>テキストです。</p>
<p>これは<mark>ハイライトされた</mark>テキストです。</p>
要素 意味 表示
<strong> 重要性が高い 太字
<em> 強調(ニュアンスの変化) 斜体
<mark> ハイライト 黄色背景
<b> 見た目の太字(意味なし) 太字
<i> 見た目の斜体(専門用語等) 斜体

重要: <strong><b>は見た目が同じですが、意味が違います<strong>は「この内容が重要」という意味を持ち、<b>は単に見た目を太字にするだけです。スクリーンリーダーは<strong>を強調して読み上げます。

flowchart LR
    subgraph Semantic["✅ セマンティック"]
        S1["&lt;strong&gt; = 重要"]
        S2["&lt;em&gt; = 強調"]
    end
    subgraph Visual["⚠️ 見た目のみ"]
        V1["&lt;b&gt; = 太字"]
        V2["&lt;i&gt; = 斜体"]
    end
    style Semantic fill:#22c55e,color:#fff
    style Visual fill:#f59e0b,color:#fff

その他のテキスト要素

<p><small>注意事項: この情報は変更される場合があります。</small></p>
<p>H<sub>2</sub>O(水の化学式)</p>
<p>E = mc<sup>2</sup>(アインシュタインの公式)</p>
<p><del>旧価格: 5,000円</del><ins>新価格: 3,980円</ins></p>
<p><abbr title="HyperText Markup Language">HTML</abbr>を学びましょう。</p>
要素 用途
<small> 注釈、免責事項
<sub> 下付き文字(化学式など)
<sup> 上付き文字(べき乗など)
<del> 削除されたテキスト
<ins> 追加されたテキスト
<abbr> 略語(titleで正式名称を表示)

引用

ブロック引用(<blockquote>

<blockquote cite="https://example.com/source">
    <p>Webの力は、その普遍性にある。障害の有無に関わらず、
    誰もがアクセスできることが本質的な側面だ。</p>
    <footer><cite>ティム・バーナーズ=リー</cite></footer>
</blockquote>

インライン引用(<q>

<p>ティム・バーナーズ=リーは
<q>Webの力は、その普遍性にある</q>と述べました。</p>
要素 用途 表示
<blockquote> 長い引用(ブロック) インデントされた段落
<q> 短い引用(インライン) 引用符で囲まれる
<cite> 出典の表示 斜体

コードの表示

インラインコード(<code>

<p><code>console.log()</code>でコンソールに出力できます。</p>

コードブロック

<pre><code>function greet(name) {
    return "Hello, " + name;
}
console.log(greet("World"));
</code></pre>

キーボード入力とサンプル出力

<p>保存するには<kbd>Ctrl</kbd> + <kbd>S</kbd>を押します。</p>
<p>コンソール出力: <samp>Hello, World!</samp></p>
要素 用途
<code> プログラムコード
<pre> 整形済みテキスト
<kbd> キーボード入力
<samp> プログラム出力
<var> 変数名

実践: ブログ記事ページ

学んだ要素を使って、ブログ記事ページを作成しましょう。

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>HTMLを学び始めた話</title>
</head>
<body>
    <h1>HTMLを学び始めた話</h1>
    <p><small>投稿日: 2026年1月29日</small></p>

    <h2>きっかけ</h2>
    <p>自分のWebサイトを作りたいと思い、<strong>HTML</strong>の学習を始めました。</p>

    <blockquote>
        <p>千里の道も一歩から</p>
    </blockquote>

    <h2>今日学んだこと</h2>
    <p><em>テキストの構造化</em>について学びました。
    特に<mark>セマンティックな要素の使い分け</mark>が重要だと感じました。</p>

    <h3>コード例</h3>
    <pre><code>&lt;p&gt;HTMLは&lt;strong&gt;楽しい&lt;/strong&gt;&lt;/p&gt;</code></pre>

    <hr>

    <p><small>&copy; 2026 My Blog</small></p>
</body>
</html>

まとめ

概念 説明
見出し(h1〜h6) 文書の階層構造を定義する
段落(p) テキストのブロックをグループ化
strong / em 意味を持った強調
blockquote / q 引用テキスト
code / pre プログラムコードの表示

重要ポイント

  1. 見出しは階層構造を守って使う
  2. <strong><b>意味が異なる(セマンティクスを意識)
  3. HTMLの改行は**<br><p>**を使う(ソースの改行は無視される)
  4. 適切な要素を使うことでアクセシビリティが向上する

練習問題

問題1: 基本

以下のテキスト要素をすべて使ったHTMLページを作成してください: <h1>, <h2>, <p>, <strong>, <em>, <mark>

問題2: 応用

好きな名言を3つ、<blockquote>を使って表示するページを作成してください。各引用に出典(<cite>)も含めましょう。

チャレンジ問題

化学式(H₂O、CO₂など)と数学の式(E=mc²、a²+b²=c²)を正しく表示するHTMLページを作成してください。


参考リンク


次回予告: Day 3では「リンクとナビゲーション」について学びます。Webの核心である「ハイパーリンク」の仕組みをマスターしましょう。