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

読み取った先へのリンクがないQRコード

アプリの案内から先へ進む手段が alt="QRコード" のQRコードしかなく、読み取りに使うはずのスマートフォンの画面にもそのまま表示されてしまう

WCAG 2.2
SC 1.1.1A
必須とする規格
Section 508 · EN 301 549(EU) · JIS X 8341-3
問題あり <img src="qr-app.svg" alt="QRコード">
アクセシビリティの問題を示した図: 全盲:このコードはどこにつながるの?
01

問題

スクリーンリーダー利用者とスマートフォンで見ている人が、QRコードの先のページにたどり着けない

02

試してみる

このスマートフォンで、アプリのダウンロードページを開いてみましょう

このページは、QRコードを読み取るはずのスマートフォンに表示されています。QRコードをタップし、スクリーンリーダーの読み上げも見てみましょう。

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

問題アプリへ進む方法がQRコードだけ

ご注文ありがとうございます。注文番号1042を承りました。

公式アプリ

アプリでは注文の配送状況を確認でき、初回のご注文は10%オフになります。

スマートフォンのカメラでQRコードを読み取ってください。

QRコード

まだ何もタップしていません。

画面を順にスワイプすると、スクリーンリーダーはこう読み上げます:

  1. ご注文ありがとうございます。注文番号1042を承りました。
  2. 公式アプリ、見出しレベル3
  3. アプリでは注文の配送状況を確認でき、初回のご注文は10%オフになります。
  4. スマートフォンのカメラでQRコードを読み取ってください。
  5. QRコード、画像

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

03

修正方法

QRコードの横に、同じページへのリンクを置く

修正前
問題アプリへ進む方法がQRコードだけ
<section class="get-app">  <h2>公式アプリ</h2>  <p>アプリでは注文の配送状況を確認でき、初回のご注文は10%オフになります。</p>  <p>スマートフォンのカメラでQRコードを読み取ってください。</p>  <img src="/images/qr-app.svg" alt="QRコード" width="96" height="96"></section>
問題点3点
  • alt が「QRコード」だけのため、コードが持つアドレスに対応するテキストがありません。
  • そのアドレスへのリンクがページのどこにもなく、たどり着く方法はコードしかありません。
  • 同じ案内がスマートフォンにも表示され、コードは読み取りに使うカメラの付いた画面に映っています。
修正後

コードの横にリンクを置く

<section class="get-app">  <h2>公式アプリ</h2>  <p>アプリでは注文の配送状況を確認でき、初回のご注文は10%オフになります。</p>  <a class="button" href="https://example.com/app">アプリをダウンロード</a>  <p>    <img src="/images/qr-app.svg" alt="" width="56" height="56">    パソコンでご覧の場合は、スマートフォンのカメラでQRコードを読み取ってください。  </p></section>
修正の手順3ステップ
  1. コードが持つアドレスへのリンクを、何が開くかが分かる言葉で加えます。スマートフォンではこのリンクをタップすればよく、パソコンではその場でページが開きます。キーボード、音声操作、スクリーンリーダーの利用者もたどれます。
  2. コードを alt="" にします。行き先はリンクが伝えているため、スクリーンリーダーが同じことを2回読まずに済みます。
  3. コードとその説明は、パソコンで見ていてスマートフォンでページを開きたい人のために残し、そのためのコードだと書き添えます。

これで修正前の問題は解決し、1.1.1を満たします。アドレスはリンクの文字として伝わり、どの端末からでも誰でもたどれます。

混同しやすいもの
04

修正の確認

4項目、マウス不要

確認方法: スクリーンリーダー、タッチ、キーボード

4件中0件を確認済み

OS、ブラウザー、支援技術のバージョン、ビルド、日付、各手順の実際の結果を記録してください。キャンペーン、アプリストアのアドレス、コードの生成方法が変わったときは、もう一度確認してください。

制限

これは出発点となる実装例で、すべてのアプリケーションでの動作を保証するものではありません。コード例のアドレスは仮のものです。このガイドは、Webページの上でリンクの代わりになっているQRコードを扱います。情報を伝える画像全般については代替テキストがない、情報を伝える画像を、コードの横の画像に描き込まれた言葉については実際のテキストの代わりに使われた文字画像を参照してください。紙、パッケージ、看板に印刷したコードにも、同じ理由で横にアドレスを印刷する必要がありますが、Webページで解決できる範囲の外です。対象の支援技術で、一連の操作全体をテストしてください。

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

EaseWebのサービス

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

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

サービス内容を見る