Section 16 : アクセシビリティの向上

 HTML 文書は,つねにマウスを使った操作で閲覧されるわけではない。また,マウス操作が困難な人のためにも便宜を図ることが必要である。

アクセスキー

 グラフィカルな UA に慣れてしまうと,操作はマウスが当たり前,そんなふうに思ってしまう。しかし,忘れてはならない。回線の向こうであなたの情報を見てくれている人の環境は,決してあなたと同じ環境ではない。ノングラフィカルな UA ではキーボードが当たり前。また,マウス操作を困難とするようなハンディキャップを背負った人もいる。

 ジャンプやフォームなど,操作される要素には,キーボードを使ってそれにフォーカスを与えたり,動作させたりするためのアクセスキーを指定するとよい。

ACCESSKEY 属性
属性 解説
ACCESSKEY 文字 その要素へのアクセスキー。

この属性を指定できるのは,<A><AREA><BUTTON><INPUT><LABEL><LEGEND><TEXTAREA> である。

 この属性に示されたキーを何らかの方法で押すと,要素が動作したり,要素にフォーカスが与えられたりする。Windows では [Alt(GRPH)] を押しながら,MacOS では [Cmd] を押しながら,というのが一般的だろう。アクセスキーが何であるかは,文書中に示しておくとよい。

 たとえば,本ファイルの末尾に書かれた Next: ... Prev: ... のナビゲーションの部分は,こう書かれている。

Next: <A HREF="awhta1.htm" REL="next" ACCESSKEY="n">CGI(N)</A><BR>
Prev: <A HREF="awht14.htm" REL="prev" ACCESSKEY="p">フォームの基礎(7)(P)</A><BR>
Up: <A HREF="./" REL="contents" ACCESSKEY="x">目次(X)</A>

それぞれ,N,P,X のアクセスキーを指定してある。この指定は大して面倒でもないのだから,必要なところには入れるようにしたい。

タブインデックス

 キーボードから(たとえば [Tab] キーなどで)フォーカスを移す場合に,その順序を与えるのが TABINDEX 属性である。

TABINDEX 属性
属性 解説
TABINDEX 数値 値は 0 から 32767 までの整数。フォーカスを得る順序を指定する。

この属性を指定できるのは,<A><AREA><BUTTON><INPUT><OBJECT><SELECT><TEXTAREA> である。

 TABINDEX 属性の数値は連続していなくてもかまわないし,同じ値が指定されたものが 2 つ以上あってもかまわない。これらは,次のような順序でフォーカスを得る。

  1. まず,TABINDEX 属性が 0 以外に指定されたものからフォーカスを得る。
    1. その数の若いものから。
    2. 同じ数が 2 つ以上ある場合は出現順。
  2. TABINDEX が無指定の場合,または 0 に指定されたものは TABINDEX が前項であげたもののあとにフォーカスを出現順に得る。
  3. 要素が無効化されている場合には,フォーカスを得ることはない。

 例を見ながら具体的に解説しよう。

<P>...... <A HREF="..." TABINDEX="3">ジャンプ 1</A> ......</P>
<P>...... <A HREF="...">ジャンプ 2</A> ......</P>
<UL>
  <LI><A HREF="..." TABINDEX="2">ジャンプ 3</A>
  <LI><A HREF="..." TABINDEX="3">ジャンプ 4</A>
</UL>
<P>...... <A HREF="...">ジャンプ 5</A> ......</P>

結果から先に言ってしまうと,フォーカスは“ジャンプ 3→ジャンプ 1→ジャンプ 4→ジャンプ 2→ジャンプ 5”の順で得ることになる。

 まず,規則 1. から TABINDEX 属性が 0 以外に指定されているものが最初にフォーカスを得ることになる。規則 1.1. から最初は TABINDEX="2" の“ジャンプ 3”。それより大きい数は TABINDEX="3" の“ジャンプ1”と“ジャンプ 4”だが,規則 1.2. から出現順,すなわち“ジャンプ 1”“ジャンプ 4”の順になる。

 それから,規則 2. から TABINDEX 属性が指定されていない残りが出現順,“ジャンプ 2”“ジャンプ 5”の順にフォーカスを得る。

アクセシビリティを考える

 WWW の浸透によって,多くの人に情報の発信・受信の機会が開かれた。世界へ向けて情報を発信するさいに,あなたは何を考え,望むだろうか。

 多くの人に見てもらいたい,知ってもらいたいという願いはどこかにあるだろう。しかし,“多くの人に見てもらう”ために,何をしようとするだろうか。

 現在の WWW を見る限り,その手段として“ページを飾ること”が採られているケースがひじょうに多いというのが事実である。そのための“素材集”のサイトはサーチエンジンにかければげっぷが出るほどヒットするし,雑誌では毎月のように“いかに見せるか”を扱う記事が目白押しである。“Web デザイン”ということばも,すでに市民権を得たように思える。

 そうすることは結構なのだが,これまで強調してきたように,HTML で記述された文書は,UA に関わりなく(HTML 4.0 で書いたなら少なくとも HTML 4.0 対応の UA では)構造が読みとれるような記述にしておくことが肝要である。特定の UA でなくては見ることすらできないようなページを作るのは論外である。

 ページを飾ることも,アピールとして多くの人を引きつけるであろう。ただし,WWW に情報を公開する以上,それが文字どおりワールドワイドにアクセスされ,あるいは人によってあなたの情報が欲せられる可能性があるのである。

 情報は平等にアクセスされなくてはならない。そのための便宜は図られるべきである。できるだけ多くの人に開かれた情報を,あなたの努力の範囲で,供すべきである。これは,いわば,“多くの人に見てもらう”ための必要条件的なものであろう。

 そう,“多くの人”である。日本語でしが情報が提供できない,というのはしかたないかもしれない。必要なのは“思いやり”である。回線の向こうの,ハンディキャップを背負った人にも,あなたの情報を快適に見てもらえるように,思いやりのひとかけらを,それがやがて,自然であるように。