本文へ移動
easeweb
ご相談
トピックを検索

大きさで選ばれ、構造と合わない見出し

レシピのページで、主な項目の見出しをスタイルを付けたdivで作り、小さい見出しにh5を、区切り線に空のh2を使っているため、スクリーンリーダーの見出し一覧に、ページの中心となる項目が出てきません。

WCAG 2.2
SC 1.3.1ASC 2.4.6AA
必須とする規格
Section 508 · EN 301 549(EU) · JIS X 8341-3
問題あり <div class="section-title">作り方</div>
アクセシビリティの問題を示した図: 「材料」と「作り方」は見出しに見えるが、見出しではない。
01

問題

主な項目が見出しになっていないため、スクリーンリーダー利用者は見出しでページを拾い読みできません。

02

試してみる

見出し一覧を使って、作り方へ移動してください。

一覧には、このレシピのページでスクリーンリーダーが見つける見出しが出ます。各見出しの横のタグは、そのマークアップです。項目を選ぶとそこへ移動します。「作り方」にたどり着けますか?

問題あり 修正できますか?

レンズ豆のスープ<h1>

平日の夜に作れる、とろりと温まるスープです。

<h2>
材料<div>
  • 玉ねぎ 1個
  • にんじん 2本
  • 赤レンズ豆 200 g
  • 野菜スープ 1リットル
作り方<div>
  1. 玉ねぎとにんじんを柔らかくなるまで炒める。
  2. レンズ豆とスープを加える。
  3. 25分煮てから、なめらかにする。
コツ<h5>

レモンを少し搾ると味が引き締まります。

その他<h2>
  • トマトのスープ
  • グリーンピースのスープ
  • ポロねぎとじゃがいものスープ

スクリーンリーダーの見出し一覧:

再現デモです。「問題あり」は意図的にアクセシブルでない状態にしています。

03

修正方法

項目の見出しをすべて、構成上の位置に合ったレベルの見出しにし、見た目はクラスで整えます。

  1. 1見える項目の見出しは、すべて見出しにする。h1〜h6要素か、role="heading"とaria-levelを使う。
  2. 2レベルは構成から、大きさはクラスから決める。
  3. 3すべての見出しに項目を表す言葉を入れ、見出しでないものは見出しにしない。
修正前 見た目のためのマークアップ
<h1>レンズ豆のスープ</h1><p>平日の夜に作れる、とろりと温まるスープです。</p><h2 class="divider"></h2> <div class="section-title">材料</div><ul>…</ul> <div class="section-title">作り方</div><ol>…</ol><h5>コツ</h5><p>…</p> <h2>その他</h2><ul class="cards">…トマトのスープ、グリーンピースのスープ、ポロねぎとじゃがいものスープ…</ul>
修正後

正しいレベルの見出し要素

<h1>レンズ豆のスープ</h1><p>平日の夜に作れる、とろりと温まるスープです。</p> <h2 class="section-title divider">材料</h2><ul>…</ul> <h2 class="section-title">作り方</h2><ol>…</ol><h3 class="title-small">コツ</h3><p>…</p> <h2 class="section-title">ほかのスープのレシピ</h2><ul class="cards">…トマトのスープ、グリーンピースのスープ、ポロねぎとじゃがいものスープ…</ul>

この方法を選ぶ理由:まずHTMLの要素を使う

AI コーディングアシスタントで修正しますか? このガイドを Markdown で取得

04

修正の確認

マウスを使わない4つの確認

確認方法: スクリーンリーダー

4件中0件を確認済み

OS、ブラウザーと支援技術のバージョン、ビルド、実施日、各手順の実際の結果を記録してください。テンプレート、共通の見出しコンポーネント、CMSエディターのスタイルを変更した際は、再度確認します。

制限

このサンプルは、どのアプリケーションでも同じ結果になることを保証するものではありません。クラス名、色、リスト内の … は仮のものです。スクリーンリーダーによって見出し一覧の言い方は異なるため、正確な言い回しではなく、見出しの言葉とレベルを確認してください。このガイドは、見出しであるかどうか、そのレベルと言葉を扱います。長い内容に十分な見出しがあるかどうかや、フォームの欄のラベルは扱いません。実際に使用する支援技術で、操作全体を確認してください。

よくある問題を再現した学習用のサンプルです。実在のクライアントの診断結果ではありません。コードは出発点となる実装例のため、実際の製品でも確認してください。ここでは支援技術でのテスト結果は報告していません。

コードを更新しても、使いやすさを保つために

ガイドの内容を、コーディングエージェントやCIで使える開発ルールにまとめます。更新後は、キーボードとスクリーンリーダーで再テストし、問題が再発していないか確認します。

再テストの進め方