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

ヘルプページかホバーでしか読めない入力欄のヘルプ

返品フォームが注文番号を求めながら、どこで確認できるかを書いておらず、答えはヘルプセンターか、マウスポインターを重ねたときだけ開く「?」の中にしかない

WCAG 2.2
SC 3.3.5AAA
必須とする規格
Section 508、EN 301 549、JIS X 8341-3 では必須ではない
問題あり
アクセシビリティの問題を示した図: 認知:注文番号はどこにあるの?
01

問題

注文番号の場所を知らない人はフォームを離れて調べるしかなく、キーボードやスクリーンリーダーの利用者には、マウスで開けるヘルプが届かない

02

試してみる

マフラーを返品します。フォームを離れずに、注文番号がどこにあるかを調べてみましょう

  • 問題1: 欄のそばには、注文番号がどこにあるかが書かれていません。メールアドレスを入力してから、ヘッダーの「ヘルプ」で答えを探し、答えのページの「返品の手続き」リンクで戻ってください。入力したメールアドレスはどうなりましたか?

  • 問題2: 「?」にマウスポインターを重ねて答えを読んでください。次にマウスを使わずにTabキーでフォームを移動してください。フォーカスは「?」に止まりますか? スクリーンリーダーは欄で何と読みますか?

  • 修正を適用します。 マウスで、次にTabキーだけで、もう一度答えを探してください。答えは欄のそばにありますか? スクリーンリーダーは何と読みますか?

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

返品の手続き

スクリーンリーダーの読み上げ:

(Tabで入力欄へ移動)

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

03

修正方法

ヘルプは、それが必要な欄のそばに置く

修正前

ヘルプセンターにしかないヘルプ

<header>  <a href="/">Hollis</a>  <a href="/help">ヘルプ</a></header><main>  <h1>返品の手続き</h1>  <form method="post" action="/returns">    <label for="order">注文番号</label>    <input id="order" name="order" type="text">     <label for="email">ご注文時のメールアドレス</label>    <input id="email" name="email" type="email" autocomplete="email">     <button type="submit">注文を探す</button>  </form></main>
問題点3点
  • 「注文番号」のそばに、どこで確認できるかも、どんな形かも書かれていません。
  • ヘルプはヘッダーの「ヘルプ」リンクだけで、開くのはヘルプセンターのトップページです。
  • そこで答えを読むには、フォームを離れなければなりません。
修正後

ラベルの下のヒント

<header>  <a href="/">Hollis</a>  <a href="/help">ヘルプ</a></header><main>  <h1>返品の手続き</h1>  <form method="post" action="/returns">    <label for="order">注文番号</label>    <p id="order-hint" class="hint">注文番号は、ご注文確認メールの件名と納品書に記載されています(例:HL-482130)。</p>    <input id="order" name="order" type="text" aria-describedby="order-hint">     <label for="email">ご注文時のメールアドレス</label>    <input id="email" name="email" type="email" autocomplete="email">     <button type="submit">注文を探す</button>  </form></main>
修正の手順3ステップ
  1. 番号がどこにあり、どんな形かを、ヘルプセンターの答えと同じ言葉でラベルの下に表示します。
  2. aria-describedby で欄に結び付けます。スクリーンリーダーは、欄の名前と役割の後にヒントを読みます。
  3. 「?」があれば取り除きます。ヘルプはもう、すべての人の画面に出ています。

修正前の二つの例がどちらも直り、3.3.5を満たします。ヒントの色はショップのグレー #4a5560 で、白に対して7.61:1です。ヒントは1、2行に収めてください。スクリーンリーダーは、欄にフォーカスが移るたびにヒントを最後まで読みます。

04

デザインの案

ヘルプは控えめでもよいが、誰もが届く場所に置く

注文番号のヘルプの描き方を、さらに4通り示します。それぞれをマウスで、次にTabキーとキーボードだけで試してください。2つはヘルプを手の届くところに置き、2つは必要なときにヘルプを遠ざけてしまいます。

デザインファイルで

  • ヘルプが要る欄ごとに、その下へ、実際に表示する文言でヘルプを書く。値がどこにあり、どんな形かを書く。
  • ヘルプをボタンで開く形にするなら、ボタンのフォーカスの枠と、欄を覆わずに押し下げて開いた状態のヘルプも描く。
  • 幅390ピクセルのスマートフォンの画面でも描き、ヘルプはフォームの横の列ではなく欄の下に置く。
  • ヘルプの文字のコントラスト比を横に書く。背景に対して4.5:1以上にする(白に対するグレーなら7.61:1)。

合格

  • ご注文確認メールの件名を探してください。

    Hollis ご注文 HL-482130 を承りました

    番号のある場所を描いた図 メールそのもののように描いた一行で、送信者を太字にし、番号を淡い黄色の背景(12.65:1)で強調すると、受信箱で何を探せばよいかが分かります。その上の文も#4a5560(7.61:1)で同じことを伝えているので、図を見なくても答えは分かります。
  • その場でヘルプを開く「?」 丸い「?」はラベルの行をすっきり保ちますが、ボタンです。Tabキーで止まり、Enterキーかクリックで、ラベルの下にヘルプがクリーム色の#f6f1ea(6.77:1)で開きます。ヘルプは欄を覆わず、欄を押し下げます。もう一度押すか、Escapeキーで閉じます。

不合格

  • プレースホルダーに入れたヘルプWCAG 3.3.5 欄の中のグレーの言葉はすっきり見え、内容も正しいのですが、最初のキーを押した時点で消えてしまいます。入力した内容を例と見比べたいのは、ちょうどそのときです。
  • お困りですか? ヘルプセンターを見る →

    ヘルプセンターへリンクする親しみやすいカードWCAG 3.3.5 浮き輪のアイコンを添えた温かみのあるカードは役に立ちそうに見えますが、リンクが開くのはヘルプセンターのトップページです。答えにたどり着くには検索が要り、フォームからも離れてしまいます。サイトについてのヘルプであって、この欄のヘルプではありません。
05

修正の確認

4項目、マウス不要

確認方法: キーボード、スクリーンリーダー、拡大表示

4件中0件を確認済み

OS、ブラウザー、支援技術のバージョン、ビルド、日付、各手順の実際の結果を記録してください。欄を追加したときや、注文番号の形式など、利用者に求めるものが変わったときにも、もう一度確認してください。

スクリーンリーダーでの aria-describedbyの読まれ方

制限

これは出発点となる実装例であり、すべてのアプリケーションで適合を保証するものではありません。3.3.5はレベルAAAで、EN 301 549やSection 508が求めるレベルAとAAを超えるものです。それでも、W3CのUnderstandingのページは、このヘルプが役立つ人として、書くこと、読むことに困難のある人、知的障害のある人、文字の入力に苦労する高齢の人を挙げています。このガイドは、一つの欄のヘルプを扱います。ラベルそのもの(何を入力するのか分からない、あいまいなフォームのラベル)、開いた後のツールチップの動き(近づくと消え、閉じられないツールチップ)、サイトのヘルプリンクのページごとの位置(ページごとに場所が変わるヘルプリンク)は扱いません。どの欄にヘルプが要るかは、フォームに入力する人と、その人の手元にあるものによって変わるので、実際の利用者と一緒に確認してください。

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

EaseWebのサービス

修正した問題を、次のリリースで再発させない

このガイドのような修正方法を、コーディングエージェントが従うルールと、CIのチェックに組み込みます。あわせて定期的に、キーボードとスクリーンリーダーで手動の再テストを行います。

サービス内容を見る