あなたに合った学習プランは?LINE適正コース診断はこちら プログラミングが全て無料で学習可能!
HTMLのasideタグとは?article・sectionとの違いや使い方 - 忍者CODEマガジン

HTMLのasideタグとは?article・sectionとの違いや使い方

プログラミング言語の辞書

asideタグは、サイドバー、関連記事、プロフィール、補足情報、広告・バナーなどで使われることがあるHTMLタグです。ただし、articleタグやsectionタグと役割が近く、「どこまでasideで囲めばいいの?」「広告バナーに使っていいの?」と迷いやすいタグでもあります。

今回の記事では、

  • asideタグとは何か
  • asideタグとarticle・section・divタグの違い
  • サイドバーでの使い方
  • 広告・バナーの扱い
  • asideタグのNG例と正しいコード例

について解説していきます。

HTMLのasideタグとは?

asideタグは、ページ本文や記事本文に対して間接的に関連する補足コンテンツを表すHTMLタグです。代表的な使い方は、サイドバー、関連記事、著者プロフィール、補足メモ、広告枠、バナー枠などです。

<article>
  <h1>HTMLのasideタグとは</h1>
  <p>本文が入ります。</p>

  <aside>
    <h2>関連記事</h2>
    <ul>
      <li><a href="#">HTMLタグ一覧</a></li>
    </ul>
  </aside>
</article>

この例では、記事本文そのものではありませんが、本文と関連する関連記事をasideタグで囲んでいます。

asideタグは「補足」だが「無関係」ではない

asideタグは補足コンテンツに使いますが、ページ内容とまったく関係ないものを入れるタグではありません。

  • 本文に関連する補足情報
  • 記事と関連するリンク
  • 記事の理解を助ける用語説明
  • サイト全体の補助的なサイドバー
  • 本文と関連する広告・バナー

本文と無関係な装飾や、ページの主役となる情報をasideタグに入れるのは避けましょう。

asideタグはアクセシビリティでも意味を持つ

asideタグは、支援技術では補完的な領域として扱われます。つまり、スクリーンリーダーなどに対して「ここは本文を補足する領域です」と伝えやすくなります。見た目のサイドバーを作るだけならdivでもできますが、意味まで伝えたい場合はasideタグが適しています。

スクリーンリーダー(音声読み上げ機能)を使用しているユーザーの場合、asideタグで囲まれた部分は「補完的な領域」として認識されます。これにより、ユーザーは必要に応じてサイドバーや広告などの補足情報をスキップし、メインの本文だけを効率よく飛ばし読み(ジャンプ)することが可能になります。

asideタグとarticle・section・divタグの違い

asideタグで迷いやすいのが、articleタグやsectionタグとの使い分けです。結論からいうと、判断基準は「その内容が本文の中心なのか、独立して読めるのか、補足なのか」です。

タグ 役割 使う場面
<aside> 本文に間接的に関連する補足 サイドバー、関連記事、広告、補足メモ
<article> 単独で成立する独立した内容 ブログ記事、ニュース記事、レビュー、投稿コメント
<section> 1つのテーマを持つ章や区切り 料金、特徴、FAQ、記事内の見出し単位
<div> 意味を持たない汎用的な箱 CSSレイアウト、装飾、意味を持たせないグループ化

articleタグとの違い

articleタグは、単独で読んでも意味が通る内容に使います。たとえば、ブログ記事そのもの、ニュース記事、レビュー、コメントなどです。

<article>
  <h1>HTMLの基本</h1>
  <p>HTMLの基礎を解説します。</p>
</article>

asideタグは、articleの本文を補足する情報に使います。

<article>
  <h1>HTMLの基本</h1>
  <p>HTMLの基礎を解説します。</p>

  <aside>
    <h2>補足:HTMLタグ一覧</h2>
    <p>HTMLタグを一覧で確認できます。</p>
  </aside>
</article>

本文そのものならarticle、本文を補足する情報ならasideと考えると使い分けやすいです。

sectionタグとの使い分け

sectionタグは、ページや記事の中で1つのテーマを持つまとまりに使います。本文の章や、サービス紹介、料金表、FAQなどに向いています。

<main>
  <section>
    <h2>サービスの特徴</h2>
    <p>サービスの強みを紹介します。</p>
  </section>

  <aside>
    <h2>関連リンク</h2>
    <p>あわせて読みたい記事です。</p>
  </aside>
</main>

この例では、サービスの特徴は本文の主要な章なのでsection、関連リンクは補足なのでasideにしています。本文の中心となる見出しブロックまでasideタグに入れると、HTMLの意味がずれます。

divタグとの違い

divタグは意味を持たない汎用的な箱です。CSSでレイアウトを整えるために囲みたいだけならdivタグで問題ありません。

<div class="sidebar-box">
  <p>装飾用のボックスです。</p>
</div>

一方、サイドバーや関連記事など、補足コンテンツとして意味を持たせたい場合はasideタグを使います。

<aside class="sidebar">
  <h2>関連記事</h2>
  <ul>
    <li><a href="#">HTMLの基礎</a></li>
  </ul>
</aside>

見た目の箱ならdiv、補足コンテンツとして意味を持たせるならasideを使うと判断しやすいです。

サイドバーでのasideタグの使い方

asideタグの代表的な使い方がサイドバーです。ブログやメディアサイトでは、記事本文の横にプロフィール、人気記事、カテゴリ一覧、検索フォームなどを置くことがあります。

サイドバー全体をasideで囲む例

サイドバーがページ本文を補足する情報であれば、asideタグで囲めます。

<main class="layout">
  <article class="post">
    <h1>記事タイトル</h1>
    <p>記事本文が入ります。</p>
  </article>

  <aside class="sidebar">
    <section>
      <h2>プロフィール</h2>
      <p>著者情報を紹介します。</p>
    </section>

    <section>
      <h2>人気記事</h2>
      <ul>
        <li><a href="#">HTMLタグ一覧</a></li>
      </ul>
    </section>
  </aside>
</main>

サイドバーはasideタグ、サイドバー内のプロフィールや人気記事などのまとまりはsectionタグで分けると構造が整理しやすくなります。

サイドバー内の検索フォームはasideで良い?

サイドバー内にサイト内検索フォームを置くことがあります。この場合、サイドバー全体が補足領域であればasideタグ内に検索フォームを入れても問題ありません。

<aside class="sidebar">
  <section>
    <h2>サイト内検索</h2>
    <form action="/search" method="get">
      <input type="search" name="q">
      <button type="submit">検索</button>
    </form>
  </section>
</aside>

ただし、検索フォームがページの主機能である検索ページでは、asideではなくmain内の主要コンテンツとして扱う方が自然です。

広告・バナーの扱い:asideタグに入れて良い?

広告やバナーは、asideタグで扱うか迷いやすい要素です。結論として、ページ本文を補足する位置づけの広告やバナーであれば、asideタグに入れて問題ありません。

広告・バナーをasideに入れる例

記事本文の横や下に、関連サービスの広告バナーを置く場合はasideタグで囲めます。

<aside class="ad-area">
  <h2>おすすめ講座</h2>
  <a href="/course/html">
    <img src="banner.jpg" alt="HTML講座を見る">
  </a>
</aside>

広告やバナーでも、本文に関連する補足情報として配置するならasideタグを使えます。

広告ラベルとalt属性を忘れない

広告やバナーを配置するときは、ユーザーが広告だとわかるように見出しやラベルを用意すると親切です。また、画像バナーにはalt属性を設定します。

<aside class="ad-area" aria-label="広告">
  <a href="/course/html">
    <img src="html-course-banner.jpg" alt="HTML講座の詳細を見る">
  </a>
</aside>

画像バナーのalt属性を空にすると、リンク先の目的が伝わりにくくなる場合があります。クリックできるバナーでは、リンク先がわかるalt文を入れましょう。

本文の主役になるCTAはasideにしない場合もある

広告やバナーがすべてasideになるわけではありません。たとえば、ランディングページで申し込みボタンや料金案内がページの主役である場合、それは補足ではなく主要コンテンツです。

  • 記事横の関連バナー:asideで扱いやすい
  • 記事末尾の補足CTA:asideで扱いやすい
  • LPのメイン申し込みエリア:sectionやmain内の主要コンテンツとして扱う

広告・バナーをasideにするかは、場所ではなく「本文の補足か、ページの主役か」で判断します。

asideタグを使うときのNG例

asideタグは補足情報に使うタグですが、何でもasideに入れてよいわけではありません。ここではよくあるNG例を整理します。

本文の一部をasideで囲む

本文の流れとして必要な説明をasideタグで囲むのは避けましょう。

【NGな例】
<p>asideタグは補足情報に使います。</p>

<aside>
  <p>この説明は本文の理解に必須です。</p>
</aside>

本文の理解に必須の説明であれば、通常のpタグやsectionタグで扱います。

かっこ書きだけをasideにする

短い補足のかっこ書きをすべてasideタグにする必要はありません。

【過剰な例】
<p>HTMLはWebページの構造を作る言語です。</p>
<aside>(HyperText Markup Languageの略)</aside>

この程度の短い補足であれば、本文中にそのまま書く方が自然です。

ただのレイアウト用にasideを使う

右側に配置したいからaside、囲みたいからaside、という使い方は避けましょう。HTMLタグは見た目ではなく意味で選びます。

【判断基準】
本文を補足している → aside
ページの主要な章である → section
単独で読める記事である → article
見た目の箱でしかない → div

asideタグは「横に置くためのタグ」ではありません。補足コンテンツを表すためのタグです。

【コピペOK】asideタグを使った正しいコード例

ここでは、実務で使いやすいasideタグのコード例を紹介します。

ブログ記事と関連記事の例

<main>
  <article>
    <h1>HTMLのasideタグとは</h1>
    <p>asideタグの使い方を解説します。</p>
  </article>

  <aside aria-labelledby="related-title">
    <h2 id="related-title">関連記事</h2>
    <ul>
      <li><a href="#">HTMLタグ一覧</a></li>
      <li><a href="#">HTMLとCSSの基礎</a></li>
    </ul>
  </aside>
</main>

サイドバーと広告バナーの例

<aside class="sidebar">
  <section aria-labelledby="profile-title">
    <h2 id="profile-title">プロフィール</h2>
    <p>著者の紹介文です。</p>
  </section>

  <section aria-labelledby="ad-title">
    <h2 id="ad-title">おすすめ講座</h2>
    <a href="/course/html">
      <img src="banner.jpg" alt="HTML講座の詳細を見る">
    </a>
  </section>
</aside>

asideタグ内に複数の補足ブロックがある場合は、sectionタグで分けると読みやすい構造になります。

asideタグの実務チェックリスト

asideタグを使う前に、以下を確認してください。

確認項目 判断基準
本文との関係 本文に間接的に関連する補足か
主役か補足か ページの中心ならasideではなくmainやsectionを検討する
独立性 単独で成立する記事ならarticleを検討する
サイドバー プロフィール、人気記事、関連記事などはasideと相性がよい
広告・バナー 補足的な広告ならaside、主CTAならsectionを検討する
アクセシビリティ 必要に応じてaria-labelや見出しを付ける

asideタグは「サイドに置くもの」ではなく「本文を補足するもの」に使うタグです。

公式ドキュメントも確認する

asideタグの仕様を正確に確認したい場合は、公式ドキュメントも参考になります。

 

まとめ

asideタグは、本文や記事に間接的に関連する補足コンテンツを表すHTMLタグです。

articleタグは単独で読める独立した内容、sectionタグは1つのテーマを持つ章、divタグは意味を持たない汎用的な箱です。asideタグは、これらとは違い、サイドバー、関連記事、補足メモ、広告・バナーなどの補足領域に使います。広告やバナーも、本文を補足する位置づけであればasideタグに入れられます。ただし、ページの主役となるCTAや申し込みエリアであれば、sectionタグなどで主要コンテンツとして扱う方が自然です。

迷ったときは、「これは本文の中心か、それとも補足か」を基準にしてください。補足ならaside、中心ならsectionやarticle、意味を持たない箱ならdivを使うと、HTML構造が整理しやすくなります。