WEB+DB PRESS Vol.49 WAI-ARIA2009年03月02日 17時35分

現在発売中の WEB+DB PRESS Vol. 49 にて Accessible Rich Internet Applications (WAI-ARIA) に関する記事を書かせていただきました。2009 年は Web アクセシビリティの年になるという噂をどこからともなく聞きつけてこのテーマにしたのですが、ちょうど WAI-ARIA 1.0 の最終草案も公開されよいタイミングになったのではと勝手に思っています。

WAI-ARIA とは何なのか、詳しいことは雑誌記事を参照していただくとして、簡単に言えば JavaScript で構築した RIA を機械的に認識するための仕様です。たとえば JavaScript でこったボタンを作ったとしましょう。利用者がどうやって「それがボタンである」ということを認識するかといえば、「周りから浮き出ていてマウスカーソルを乗せると色が変わる」といった感覚によっているわけです。

PC 上でグラフィカルなブラウザ経由でしか Web を使わないのならそれでもいいかもしれませんが、Web の閲覧環境というのは千差万別でしてそれでは困ることも多々あります。そこで、グラフィカルな表現に加えて「これはボタン、すなわち何らかの動作のトリガーとなるものである」という情報を埋め込んでおくことで、個々の閲覧環境に応じた表現をとることも可能となるのです。

さて、雑誌記事中では WAI-ARIA で拡張された tabindex 属性にも触れているのですが、それと関係して「Web2.0ナビ: 送信ボタンの上にリンクがあればtabindex=-1に」という記事がありました。フォーム内で、フォームコントロールのみをキーボードアクセス可能にするために、リンクの tabindex 属性に値 -1 を指定しようという内容です。しかし、これをやってはいけません。そのリンクがキーボードアクセス不能になり、アクセシビリティが低下してしまいます。

そもそも tabindex 属性によるアクセス順の指定には、ページ内での絶対的な順序しか指定できない (特定の要素からの相対的な順序の指定ができない) という欠点があり、乱用すれば直感的な操作を妨げてしまいます。tabindex 属性を使う際には以下 2 点に気をつけ、アクセス順を指定する属性としてではなく、フォーカス可能かどうか・キーボードアクセス可能かどうかを指定する属性として使うべきというのが私の考えです。

  1. tabindex 属性の値には基本的に 0 (フォーカス可能かつキーボードアクセス可能) か -1 (フォーカス可能だが直接的にキーボードアクセス可能ではない) かのみを用いる。
  2. HTML 4 で tabindex 属性が定義されている要素 (リンクとフォームコントロール) では基本的に tabindex 属性を用いない。

tabindex="-1" を使う場面の解説は雑誌記事に譲るとして、執筆にあたってつくづく感じたのは日本語資料の充実具合です。WCAG 2.0 が勧告からわずか 1 か月で日本語に訳され、WAI-ARIA 関連文書の日本語訳もそろっているなど、もう関係各所の皆様には足を向けて寝られません。

そんなこんなで 1 年間続けさせていただいた WEB+DB PRESS での連載も今回が最終回です。正直ライブラリ全盛のこの時期に DOM だの何だの書いていて受け入れられるのだろうかとも思いますが、何らかのヒントにでもなれば幸いです。読者の皆様、編集はじめ関係者の皆様、本当にありがとうございました。

コメント

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※投稿には管理者が設定した質問に答える必要があります。

名前:
メールアドレス:
URL:
次の質問に答えてください:
「ハイパーテキストマークアップ言語」をアルファベット4文字でいうと?

コメント:

トラックバック

このエントリのトラックバックURL: http://nanto.asablo.jp/blog/2009/03/02/4148011/tb