サイトアイコン IT & ライフハックブログ|学びと実践のためのアイデア集

予測できるWeb操作とは?WCAG 2.2に沿った設計と実装のポイント

brown field and blue sky

Photo by Pixabay on Pexels.com

予測できるWeb操作とは、リンク、ボタン、入力欄などを使ったときに、何が起こるかを操作前に理解でき、操作後の結果も確認できる状態です。

リンクを選んだ直後に予想外の画面へ移動する、入力中にフォーカスが別の場所へ移る、送信できたのか分からないといった挙動は、利用者を迷わせます。

こうした戸惑いを減らす設計は、障害の有無や利用環境を問わず役立ちます。特に、画面の一部を拡大している人、キーボードで操作する人、読み上げを利用する人、複雑な変化を追いにくい人にとって、操作の一貫性と明確な通知は欠かせません。基本から確認したい場合は、Webアクセシビリティの考え方と改善の始め方も参考になります。

予測できる操作を三つの段階で考える

予測しやすさは、操作前、操作中、操作後に分けると点検しやすくなります。

段階 利用者が知りたいこと 設計例
操作前 このリンクやボタンは何をするのか 「資料をダウンロード」「申し込み内容を確認」のように、結果をラベルで示す
操作中 自分の操作が受け付けられたか 押下状態、処理中表示、フォーカス表示を分かる形で保つ
操作後 何が完了し、次に何をすればよいか 完了、エラー、遷移先、次の手順を画面上と支援技術の両方に伝える

見た目が分かりやすいだけでは、予測可能とは限りません。表示されていない場所で状態が変わる場合や、視覚以外の方法でページを利用する場合にも、同じ結果を把握できる必要があります。

WCAGの「予測可能」と関連する達成基準

WCAGは、Webコンテンツを利用しやすくするための国際的なガイドラインです。W3CのWCAG 2.2理解文書では、「理解可能」の原則にあるガイドライン3.2を「予測可能」として整理しています。

この記事の内容に直接関係する達成基準は、次の四つです。

達成基準 レベル 実務での要点
3.2.1 フォーカス時 A 入力欄やリンクがフォーカスを受けただけで、別画面を開くなどの状況変化を起こさない
3.2.2 入力時 A 選択や入力によって状況が変わる場合は、自動で変えず、必要なら事前に挙動を知らせる
3.2.3 一貫したナビゲーション AA 複数ページで繰り返すナビゲーションを、原則として同じ相対順序で示す
3.2.4 一貫した識別 AA 同じ機能を持つ部品は、ページが変わっても一貫した名前や表現で示す

四つの基準はレベルAとAAに分かれています。適合レベルを確認するときは、すべてを一括して「AAの基準」と扱わず、各基準のレベルを区別します。

予測しやすい画面を作る五つの実践ポイント

リンクとボタンの結果をラベルで伝える

「こちら」「詳しく見る」「クリック」のような文言だけでは、リンク先や実行される処理を判断できません。周囲の文章を読まなくても目的が分かるラベルにします。

同じ文言でも、リンクは移動、ボタンは実行という役割があります。見た目だけでなく、HTML上の要素とラベルを実際の役割に合わせます。

フォーカスや入力だけで画面を切り替えない

フォーカスは、キーボードなどで現在操作の対象になっている位置です。入力欄がフォーカスを受けただけでヘルプ画面を開いたり、選択肢を変えただけで別ページへ移動したりすると、利用者は操作の途中で現在地を失います。

画面遷移や送信は、「適用」「次へ」「送信」などの明示的な操作で実行できるようにします。入力と同時に状況を変える必要がある場合は、何が起こるかを操作前に説明します。

ナビゲーションと機能名をそろえる

ヘッダーやメニューの項目は、ページごとに順序を入れ替えないようにします。同じ検索機能を、あるページでは「検索」、別のページでは「探す」と呼ぶような不規則な変更も避けます。

一貫性は、すべてのページを同じ見た目にすることではありません。同じ機能を見つける手掛かりを、ページが変わっても保つことです。

状態変化を見た目と支援技術の両方に伝える

処理中、完了、エラーなどの状態は、色やアニメーションだけに頼らず、短い文でも示します。画面を読み上げる仕組みは、スクリーンリーダーの仕組みと実装ポイントで詳しく解説しています。

通常の完了通知には、たとえば次のようなステータス領域をあらかじめ用意し、処理後に文言を更新します。

<p id="status-message" role="status">
  登録が完了しました。確認メールを送信しました。
</p>

role="status"は、現在の作業をむやみに中断しない通知に向いています。WAI-ARIA仕様で緊急性の高い通知に位置付けられるrole="alert"は、通常の完了メッセージと使い分けます。

フォームでは入力方法と修正方法を示す

入力欄には、項目名、入力形式、必須か任意かを分かる形で示します。エラーが起きたら、「どの項目で」「なぜ受け付けられず」「どう直せばよいか」を伝えます。

エラー表示のタイミングは、入力を不必要に遮らないように選びます。フォーム全体の設計は、入力支援のWebアクセシビリティ入門も参照してください。

よくある問題と改善方法

問題 利用者が迷う理由 改善方法
リンク先が「こちら」だけで示される リンクだけを拾い読みすると目的が分からない リンク先の内容や実行結果をラベルに含める
フォーカスしただけで画面が変わる 操作を確定していないのに現在地を失う 状況変化は明示的な実行操作の後に起こす
選択肢を変えると自動送信される 確認や修正をする前に処理が進む 送信ボタンを設けるか、挙動を事前に説明する
送信後に反応がない 完了、処理中、失敗のどれか判断できない 画面上の文とステータス通知で結果を伝える
同じ機能の名前がページごとに違う 学習した操作方法を別ページで使えない 同じ機能には一貫したラベルと代替テキストを使う

公開前の確認項目

予測しやすさは、派手な機能を追加することではなく、操作と結果の対応を崩さないことから生まれます。サイト全体の基準を確認する場合は、WCAG 2.2の基礎と実務での取り組み方を確認し、設計、実装、検証で同じ判断基準を共有してください。

モバイルバージョンを終了