フォームにaccesskeyを設定しようと思ったが...
先日、Movable Typeを3.151から3.17にアップデートする際、ついでにコメントフォームにaccesskeyを振ってみた。サンプル的にはこうである(accesskeyは動作しません)。
括弧の中がアクセスキーと呼ばれるもので、ALTキーを押しながら括弧内のキーを押すことによって、入力フォームにカーソルが移動したり、ボタンをクリックするのと同等の動きをします。マウスを使えない人にとっては重要なこの機能。なんならマウスを外してブラウズすればよく分かる。最近で言うところの「アクセシビリティ」である。
アクセシビリティなページにすることは、JISで「やらなきゃダメよん」となったので、やらんばならん。てなわけで、やってみたわけだが....
accesskeyがブラウザのショートカットにダブる?
Windowsをお使いの方なら、アプリケーションを立ち上げると、左から「ファイル(F)、編集(E)、表示(V)...」とかって並んでますよね。[ALT]キーを押しながら任意のアルファベットキーを押すと、クリックと同等の動きをするわけです。
タグでaccesskeyを設定すると、ブラウザよりHTMLの方を優先するんですが、ブラウザのショートカットを使っている人もいるでしょう。で、タグにアクセスキーを設定するときは、これらにカブらないように設定した方がいいんじゃないかな?、と思ったわけです。
Windowsのブラウザを調べてみる
これがその一覧。調べてみると、結構使わない方が良さそうなキーがある。がしかし、Operaのaccesskeyは[ESC]+[SHIFT]+[accesskey]という仕様なので、ショートカットとぶつかることはない。しかし、他ブラウザとは挙動が違う。
| ショートカット キー | IE6 | Firefox 1.0.4 | Opera 8.01J | NN 7.1 | 結果 | 
|---|---|---|---|---|---|
| A | お気に入り | 使えない | |||
| B | ブックマーク | ブックマーク | ブックマーク | 使えない | |
| C | |||||
| D | アドレスバーにフォーカス | アドレスバーにフォーカス | アドレスバーにフォーカス | 使えない | |
| E | 編集 | 編集 | 編集 | 編集 | 使えない | 
| F | ファイル | ファイル | ファイル | ファイル | 使えない | 
| G | 移動 | ジャンプ | 使えない | ||
| H | ヘルプ | ヘルプ | ヘルプ | ヘルプ | 使えない | 
| I | |||||
| J | |||||
| K | |||||
| L | |||||
| M | |||||
| N | |||||
| O | |||||
| P | |||||
| Q | |||||
| R | |||||
| S | |||||
| T | ツール | ツール | ツール | ツール | 使えない | 
| U | |||||
| V | 表示 | 表示 | 表示 | 表示 | 使えない | 
| W | ウィンドウ | 使えない | |||
| X | |||||
| Y | |||||
| Z | 
ちなみに、Macintosh版のSafari、Firefoxの場合は、Windowsのようにブラウザにアサインされているショートカットキーはひとつもない。世の中全員Macユーザーなら、アクセスキーで悩むことはないんですが、そんな時代はきっと来ない(笑)。あ、ちなみに、Macintoshの場合は、「ALT」キーではなく「control」を使うので注意。
標準のフォーム用accesskeyってないの?
これだけウェブスタンダードやらアクセシビリティだと叫ばれる昨今。お名前やメールアドレスなどのよく使われる入力欄を、各サイトでおのおのaccesskeyを振ってしまったら、サイト毎に異なったaccesskeyになって分かりづらい。ブラウザのアクセスキーとダブってしまうと困る人もいる。
誰か、標準的なaccesskeyの設定なんか公開してないかな?、と思い調べたが、ないんである。意外だ。
で、上記調査を元に、ブラウザのショートカットキーにダブらないよう、自分なりにaccesskeyのキーバインドを考えてみた。NNの(W)indowは、今回は無視。
| アクセスキー | ブラウザ | キーバインド | 
|---|---|---|
| A | IE お気に入り | × | 
| B | Opera、Firefox ブックマーク | × | 
| C | (C)omment-テキストエリア部 | |
| D | IE、Firefox アドレスバーにフォーカス | × | 
| E | win共通 編集 | × | 
| F | win共通 ファイル | × | 
| G | Firefox 移動、NN ジャンプ | × | 
| H | win共通 ヘルプ | × | 
| I | ||
| J | (J)yusyo-住所。 | |
| K | (K)eyword-検索キーワード入力欄。 | |
| L | ||
| M | (M)ail-メールアドレス欄 | |
| N | (N)o-はい・いいえ式ラジオボタンの"いいえ"。 | |
| O | (O)namae-お名前。無理矢理っぽい。 | |
| P | (P)ost-ポスト、送信ボタン もしくはtele(P)hone-電話番号 | |
| Q | ||
| R | (R)eset-フォームリセットボタン | |
| S | (S)earch-サーチ、検索ボタン | |
| T | win共通 ツール | × | 
| U | (U)rl-URL入力欄 | |
| V | win共通 表示 | × | 
| W | NN ウインドウ | (W)rite-書込(送信)ボタン | 
| X | ||
| Y | (Y)es-はい・いいえ式ラジオボタンの"はい" | |
| Z | (Z)ip-郵便番号 | 
む、むずかしいんですが...ダメオーラ炸裂
あーなーんか、ダメダメぢゃん。アクセスキーはある程度語呂が良くないと分かりづらいと思うんですが、やってみると難しい。
とりあえずフォームを作ってみる
良いか悪いかはのちのち考える事にして、とりあえずありがちなフォームを作ってみる。下記フォームはaccesskeyが有効になっています。がしかーし、ページ下にコメントフォームがあるので、ちゃんと動きませんが(^^;)。
下記フォームはテーブルタグを使っているのはご愛敬ということで(^^;)...暇なときにスタイルシートに直します。
ありがち1:検索フォーム
うーん、どうだかなぁ...
「送信(W)」はピンとこないなぁ。「書き込み-(W)rite」ならいいんですけど。本来なら「投稿-(P)ost」か、もしくは「送信-(S)ubmit」でしょう。でも、(P)はtele(P)honeに使っちゃったし、(S)は(S)earchに使っちゃったから、空きがない。
上のフォームはまだシンプルですが、ショップサイトなんかではもっと複雑なフォームを使うでしょう。キーアサインにアルファベットを使うとしても、ブラウザ間のショートカットの問題をクリアしようとすれば、アルファベットが足りなくなるし、リンク先とアクセスキーとのつながりが薄くなるのは否めない。
ページ移動のアクセスキーはどうする?
ぶっちゃけ、数字キーしか残ってないという結論に達する(笑)。テンキーをカーソルに見立てて、[4(戻る)]-[6(進む)]とか、[0]=TOPとか。あるいはグローバルメニュー順に、1234...と振る?。
結論は出ない
こうやってあーでもないこーでもないとやっていると、ふとアクセシビリティの本質がチラッと見えた気がする。
つまり、1ページに大量の情報やリンクを載せること自体、あんまりアクセシビリティではないって事にならない?。
うちのサイトみたいに大量の情報とリンクを1ページ内に載せると、必要な情報の両サイドに、必要じゃない情報が大量にあるわけだ。だから、accesskeyを持ってこようがtabindexを持ってこようが、矢でも弓でも鉄砲でも竹槍でもトマホークでも持ってこようが、どのみちアクセスしがたいって事ですよ、多分。
サイト全体の見栄えを揃えるのは大事ですが、トップページが3カラムなら、全ページが3カラムでなければいけないというわけでもない。フォームメール送信ページは、フォームだけあるのが一番良い。迷う部分が減るわけだ。
ま、今度デザインリニューアルするときは、この辺も踏まえようかなっと。
なんか歯切れが悪いなぁ
にしても今回はちょっと考えてしまった....そもそも、accesskeyやtabindexが本当に必要かどうかもアヤシく感じてくる。
新旧のブラウザも含めて挙動やショートカットが統一されてないし、Operaの[ESC]+[SHIFT]+[accesskey]ってのは、ブラウザのショートカットとダブらないのはいいんだけど、あまりにも押しづらい。tabindexに至っては、ウェブスタンダードを念頭に作られたページの場合、さしてtabで動く順番を調整する必要はないと思うんですが....

 
	 
	 
	