解説書 達成基準 2.1.1:キーボード (レベル A)
要約
- 目標
- 手描きの動作を除き、全てのことがキーボードでできるようにする。
- 何をすればよいか
- ポインタのアクションに、キーボードによる同等のアクションがあることを確実にする。
- なぜそれが重要か
- 全盲及び一部の運動障害のある人を含む、多くの人がキーボードインタフェースに依存している。
意図
この達成基準の意図は、可能な限り、コンテンツをキーボード又は (代替キーボードが利用できるような) キーボードインタフェースで操作ができるようにすることである。コンテンツがキーボード又は代替キーボードで操作できるとき、(目と手の協調運動を必要とするマウスのようなデバイスを使用できない) 全盲の人にも、代替キーボード又はキーボードエミュレータの機能を果たす入力デバイスを使用しなければならない人にも操作できる。キーボードエミュレータには、音声入力ソフトウェア、息操作ソフトウェア、オンスクリーンキーボード、スキャニングソフトウェア、そして様々な支援技術及び代替キーボードが挙げられる。ロービジョンの人はまた、ポインタを目で追うのが困難なことがあり、キーボードからソフトウェアを操作できる場合、ソフトウェアの使用がはるかに容易になる (又は、単に使えるようになる)。
「個々のキーストロークに特定のタイミング」の事例としては、利用者が短時間のうちに複数のキーストロークを繰り返すもしくは実行する必要がある状況、又はキーストロークが記録される前に長い間キーを押し続けなければならない状況が挙げられる。
「ただし、その根本的な機能が利用者の動作による終点だけではない軌跡に依存する入力を必要とする場合は除く。」というフレーズは、キーボードから合理的に操作できないものを区別するために含まれている。
ポインティングデバイスにより実行される操作のほとんどは、キーボードでも実行可能である (例えば、クリックする、選択する、移動する、サイズ変更するなど)。しかし、ポインティングデバイスでは実行できる操作が、キーボードでは、膨大なキーストロークを必要とする実行方法しか知られていないという場合も、わずかに存在する。自由な手描きや水彩画は、軌跡に依存した入力を必要とする。直線や規則的な幾何学的図形を描く、ウィンドウのサイズを変更する及びある位置へオブジェクトをドラッグすること (その位置への軌跡に関係がない場合) は、軌跡に依存した入力を必要としない。
マウスキーの使用は、アプリケーションにとってキーボードに相当しないので、この達成基準を満たさないだろう。これはマウスに相当する (つまり、アプリケーションにはマウスのように見える)。
訳注
マウスキーとは、キーボードでマウスの操作を代替することのできるアクセシビリティ機能である。マウスキー - Wikipediaも参照のこと。
利用者が入力を行う機能の設計においては、オペレーティングシステムのキーボードアクセシビリティ機能が利用されている可能性を考慮することが期待される。例えば、修飾キーをロックする機能が有効になっているかもしれない。そのような環境でもコンテンツは機能し、修飾キーロックと衝突して予期しない結果を生じるようなイベントを送信しない (ようにすべきである)。
訳注
修飾キーとは、別のキーと組み合わせて使用し、そのキーの意味を一時的に変えるものである。例えば、Shift キーがこれに当たる。修飾キーとは - IT用語辞典も参照のこと。
注記
プラットフォーム及びユーザエージェントは通常、ウェブコンテンツ又はアプリケーションをキーボードインターフェイスでどう操作するかの慣習を持っている。コンテンツがプラットフォーム及びユーザエージェントの慣習に従わない場合、利用者は異なるインタラクションの方法を学習しなければならず、使いにくくなる可能性がある。ベストプラクティスとしては、コンテンツはプラットフォーム及びユーザエージェントの慣習に従うべきである。しかし、こうした慣習から逸脱しているからといって、この達成基準の規範的要件に失敗するとはならない。
例えば、フォーカスを持つボタンは、一般的に Enter キーと Space キーのどちらを用いても実行することができる。ただしウェブアプリケーションのカスタムボタンコントロールが Enter キー (又は、完全にカスタムなキーもしくはキーの組み合わせ) にしか反応しない場合でも、この達成基準の要件を満たすことになる。
注記
この達成基準は、マウス又はタッチスクリーンを用いて実行できる全ての可視コントロールが、キーボードを用いてフォーカス可能かつ操作可能でなければならないことを要求するものではない。規範的な要件としては、キーボードインターフェースの利用者が、同じ又は同等のアクションを実行し、コンテンツを操作する方法がなければならないということだけである。一般的に、これを達成する最も簡単な方法は、想定されるすべての入力デバイスで操作可能なコントロールを提供することである。いずれにせよ、ウェブアプリケーションがキーボードインターフェイス利用者のために個別の操作モードを実装している場合、この達成基準への失敗とはならない。
利点
- (目と手の協調運動を必要とするマウスのようなデバイスを使用できない) 全盲の人
- (画面上のポインタを見つけたり、目で追ったりするのが困難である) ロービジョンの人
- マウスを使うのが非常に難しいと感じ、通常はキーボードを使用している手に震えのある人
事例
- 事例 1: 描画プログラム
- 描画プログラムは、利用者がキーボードからオブジェクトの作成、サイズ変更、配置及び回転をするのを可能にする。
- 事例 2: ドラッグ&ドロップ機能
- ドラッグ&ドロップを用いるアプリケーションは、オブジェクトを移動させるための「切り取り」及び「貼り付け」又はフォームコントロールもサポートしている。
- 事例 3: 離れている点の間の移動及び接続
- 点を結ぶプログラムは、利用者が画面上の点間を移動し、スペースキーで現在の点と直前の点を結ぶことを可能にする。
- 事例 4: 例外 - お絵描きプログラム
- 水彩画を描くプログラムは、筆の動きが速度及び持続時間によって変化するため、例外の一つとして認められる。
- 事例 5: 例外 - 模型ヘリコプター飛行訓練シミュレータ
- ヘリコプター飛行訓練シミュレータは、シミュレータの性質上、模型ヘリコプターの動作をリアルタイムで教えるものであるため、例外の一つとして認められる。
- 事例 6: オプションのキーボード付き PDA
- 通常スタイラスペンで操作する PDA 機器は、オプションで取り付け可能なキーボードがある。そのキーボードは、標準的な方法で完全なウェブ閲覧を可能にする。キーボードのみのアクセスで動作するように設計されているので、ウェブコンテンツは操作可能である。
- 事例 7: ポインタ操作可能な送信ボタンを備えたシンプルな検索フォーム
- 検索フォームには、テキスト入力フィールドとそれに続く送信ボタンがある。送信ボタン自体はフォーカスを受け取らないようにコーディングされており、ポインタ入力によってのみ実行できるようになっている。しかし、キーボード利用者は、テキスト入力で検索語を入力した後に Enter キーを押すことで検索を送信できるので、このフォームは達成基準に合格となる。
テクニック
この節にある番号付きの各項目は、WCAG ワーキンググループがこの達成基準を満たすのに十分であると判断するテクニック、又は複数のテクニックの組み合わせを表している。しかしながら、必ずしもこれらのテクニックを用いる必要はない。その他のテクニックについての詳細は、WCAG 達成基準のテクニックを理解するの「その他のテクニック」を参照のこと。
十分なテクニック
- G202: Ensuring keyboard control for all functionality
-
次のテクニックの一つを用いて、キーボードで操作できることを保証する。
-
次の達成方法の一つを用いて、G90: Providing keyboard-triggered event handlers:
参考テクニック
適合のために必須ではないが、コンテンツをよりアクセシブルにするために、次の追加のテクニックを検討することが望ましい。ただし、すべての状況において、すべてのテクニックが使用可能、又は効果的であるとは限らない。
- インタラクティブなユーザインタフェースコンポーネントとして静的な要素に再度目的を持たせる場合、XHTML の役割、状態、及び値の属性を使用する (リンク追加予定) かつ SCR29: Adding keyboard-accessible actions to static HTML elements
失敗例
以下に挙げるものは、WCAG ワーキンググループが達成基準の失敗例とみなした、よくある間違いである。
- F54: Failure of Success Criterion 2.1.1 due to using only pointing-device-specific event handlers (including gesture) for a function
- F55: Failure of Success Criteria 2.1.1, 2.4.7, and 3.2.1 due to using script to remove focus when focus is received
- F42: Failure of Success Criteria 1.3.1, 2.1.1, 2.1.3, or 4.1.2 when emulating links
重要な用語
利用者の操作により実現可能なプロセス及び結果。
キーストローク入力を取得するためにソフトウェアが用いるインタフェース。
注記
標準ではキーボードが存在しない技術であっても、キーボードインタフェースによって、利用者がキーストローク入力をプログラムに提供できる。
注記
マウスキーのようなキーボード操作によるマウスエミュレータによるアプリケーション (又は、そのアプリケーションの一部) の操作は、キーボードインタフェースからの操作とは見なさない。なぜならば、この場合、プログラムの操作は、キーボードインタフェースからではなく、そのポインティングデバイス インタフェースからの入力によって行われるからである。
ある活動を完了させるために必要な利用者の一連の動作。
テストルール
以下は、この達成基準の特定の側面に関するテストルールである。この特定のルールを使用して WCAG に適合しているかどうかを確認する必要はないが、これらのルールは定義され、承認されたテスト方法である。テストルールの使用については、WCAG 達成基準のテストルールを理解するを参照のこと。