このページは、 HTMLとXHTMLの達成方法のためのユーザーエージェントサポートノートを記載する。
HTML 4.01仕様書は、alt
属性のテキストを、その要素が通常通り描画されないときに表示されるもの、と説明している。ユーザーエージェントは、画像が表示されないときにalt
属性のテキストを表示する。しかし、視覚系ユーザーエージェントは現状、イメージマップのarea要素については、キーボードでアクセスした場合、又は画像そのものが表示されない場合には、alt
属性のテキストを表示しない。また、画像の内在寸法が指定されていない場合【訳注−img要素のwidth属性やheight属性で画像のサイズが示されていない場合など】、area要素を切り抜いて表示することもある。さらに、マウスオーバー時に反応して表示されるalt
属性のテキストは、ユーザーエージェントでのフォントサイズや色の組み合わせの設定通りに表示されない。
title
属性は追加情報を提供するものとされている。しかし、ユーザーエージェントにおける現在の実装では、title属性とalt
属性のどちらかにはアクセスできるが、両方同時にはアクセスできない。ユーザーエージェントは一般的に、title
属性が指定された要素にマウスオーバーしたとき、そのtitle
属性のテキストを表示する。
このようなことから、イメージマップを用いる際、この実装方法を正しく実装するには次のどちらかが必要となる。
Ensuring the area element
area要素のalt
属性値が、画像が読み込まれていても読み込まれていなくても、フォーカス (キーボードによるフォーカスを含む) を受けたときに表示されるようにすること。または、
area要素と同じ目的を果たせる代わりのメカニズムが、ウェブページに存在すること。
This technique is not supported well by assistive technologies and cross-browser support is irregular.
(訳注: この達成方法は最新の達成方法からは削除されている)
略語や頭字語の読み上げについて、支援技術のサポートレベルは異なる。しばしば特有のカスタマイゼーション設定に依存している。
この達成方法はabbr
もしくはacronym
要素のtitle
属性がアクセシビリティサポーテッドである場合のみ十分である。title
属性がアクセシビリティ サポーテッドとなるためには、全てのキーボード利用者が (音声読み上げソフトウェアを利用しているかどうかに関わらず) title
属性の内容を利用できなければならない。
JAWS 6.2以降とWindow-Eyes 5.0以降は、abbr要素とacronym要素をサポートしている。これらの要素が現れるたびに、title属性を読み上げるように設定できるが、初期設定ではオフであり、利用者が設定をオンにすることも稀である。
グラフィカルユーザーエージェントの多くは、abbr
要素やacronym
要素でマーク付けしたテキストに、点線で下線を引いたり点線で囲んで描画する。加えて、要素にマウスオーバーしたときは、元の語句をツールチップで表示する。
Internet Explorer 7以前では、abbr
要素でマーク付けした内容には、どのようなスタイルも追加されない。Internet Explorer 6以前では、その項目にマウスオーバーしても、元の語句はツールチップとして表示されない。
特定のユーザーエージェントや支援技術では、abbr
要素とacronym
要素が利用者に対して同じ方法で表現される。
(訳注: この達成方法は、最新の達成方法では「abbr要素を用いて、略語の定義を提供する」とされている)
現在のユーザーエジェント及び支援技術は、リンクで利用できるtitle
属性の内容があるときも、利用者に何もフィードバックしない。
グラフィカルなユーザーエージェントの一部は、title
属性が指定されたa要素の上にマウスオーバーしたときに、ツールチップを表示する。しかし、現在のユーザーエージェントは、キーボードによるtitle
属性の内容へのアクセス方法を提供していない。
一般的なユーザーエージェントの一部では、短い時間 (およそ5秒) でツールチップが消えてしまう。このことが、マウスは利用できても細かな操作ができない利用者がtitle
属性の内容にアクセスする難しさや、ツールチップを読むのに時間を要する利用者の困惑につながっている。
現在のグラフィカルなユーザーエージェントは、title
属性の内容表現をコントロールするメカニズムを提供していない。利用者は、ツールチップのテキストのサイズを変更したり、前景色と背景色をコントロールしたりできない。また、ツールチップの配置を利用者がコントロールできないことも問題である。画面拡大ソフトウェアの利用者の一部は、画面領域内にツールチップが全て表示されず、title
属性の内容を意味がわかるほど得られないことにつながっているからである。
ユーザーエージェントの一部では、コンテキストメニューによって補足情報にアクセスできる。たとえばMozilla/Firefoxでは、Pに続けてShift+F10とキーを押すと、他の補足情報とともにtitle
属性の内容が表示される。
HTML 4.01仕様書は、alt
属性のテキストを、ある要素が通常通り描画されないときに表示されるもの、と説明している。そのため、視覚系ユーザーエージェントでは、画像が表示されないときにalt
属性のテキストを表示する。一方、title
属性は追加情報を提供するものとされる。ユーザーエージェントは一般的に、title
属性が指定された要素にマウスオーバーしたときに、そのtitle
属性のテキストを表示する。Internet Explorerは、title
属性のテキストが指定されていなければ、マウスオーバー時にalt
属性のテキストを表示する。一方、FirefoxやOperaは、title
属性のテキストのみをマウスオーバー時に表示し、alt
属性のテキストは表示しない。したがって、alt
属性のテキストをマウスオーバー時に表示したければ、同じテキストをtitle
属性にも指定しておくべきである。【訳注: 本段落最後の一文は、alt
属性の誤用を助長する恐れがあるので、WCAG WGに削除を提案している。】
支援技術ごとにtitle属性の音声読み上げサポートが異なる。一部の支援技術には、利用者がtitle属性によって提供される情報にアクセスする機能が含まれていない。
JAWS 7.0以降では、設定によってtitle属性値を読み上げることができる。この設定は、一時的な変更も固定的な変更も可能である。
Window-Eyes 5.5以降には、(title属性を含む) フォーカスを受けた項目の追加情報を読み上げるホットキー (ins+E) がある。
この実装方法は、title
属性がアクセシビリティサポーテッドである場合のみ達成基準を満たすことができる。title
属性がアクセシビリティサポーテッドであるためには、全てのキーボードの利用者が (音声読み上げソフトウェアを利用しているかどうかに関わらず) この属性の内容を利用できる必要がある。
この実装方法は、支援技術が十分にサポートしていないものである。HTML仕様書は、アプレットに対するテキストによる代替はその要素が描画できないときに表示される、と説明している。そのため、ユーザーエージェントがJavaアプレットをサポートしていないか、Javaアプレットが読み込み中止に設定されていないかぎり、applet
要素のボディにあるテキストによる代替はユーザーに提供されない。
Windows用のIE 6と、Windowsで動作するFirefox 1.5とOpera 9とでは、applet要素の代替テキストの扱いが異なる。IEはapplet要素のボディに含まれるテキストを表示するが、alt
属性は表示しない。一方、FirefoxとOperaは、alt
属性を表示するが、ボディに含まれるテキストは表示しない。
HTML及びXHTML仕様書では、暗示的なラベルと明示的なラベルの両方を認めている。しかし、支援技術の一部は、暗示的なラベル (たとえば、) を正確に処理できない。【訳注: なお、暗示的なラベルとは、ラベルとフォームコントロールを単にlabel要素で囲んだだけのものである。一方、明示的なラベルとは、label要素のfor属性に、フォームコントロールのid属性値と同じ値を指定することで、両者を明確に関連付けたものである。】
JAWS 7.10の動作を、Windows XPのInternet Explorer 6.0とFirefox 1.5で検証した。テキストフィールドに付けたラベルは、明示的なラベルでも暗示的なラベルでも、バーチャルPCカーソルとフォーム読み上げモードの両方で読み上げられた。ただし、フォーム読み上げモードでは、チェックボックスとラジオボタンに付けた暗示的なラベルは読み上げられなかった。
Window-Eyes 5.5の動作を、Windows XPのInternet Explorer 6.0とFirefox 1.5で検証した。フォームフィールドの明示的なラベルは常に読み上げられたが、ブラウズONモードでは暗示的なラベルは読み上げられなかった。ただし、ブラウズOFFモードでコントロールからコントロールへと移動したときは、暗示的なラベルでも読み上げられた。
ユーザーエージェントは、title
属性が指定してあるinput
要素にマウスオーバーしたときに、ツールチップを表示するようである。支援技術はtitle属性を抽出し、多くのグラフィカルブラウザはtitle属性をツールチップで表示する。ただし、キーボード操作ではツールチップを開けないため、視力はあるがマウスではなくキーボードを使っている利用者は、現状ではツールチップの情報を利用できない恐れがある。
JAWSとWindow-Eyesでは、フォームコントロールがフォーカスを受けたとき、もしlabel
要素が指定されていなければ、title
属性を読み上げる。
JAWS 6.0以降では、label
要素とtitle
属性が異なるとき、その両方を読み上げるように設定できる。しかし、この設定方法に気づいているユーザーは非常に少ない。
Window-Eyes 5.5には、(title属性を含む) フォーカスされた項目の追加情報を読み上げるホットキー (ins+E) がある。
longdesc
に対するユーザーエージェントのサポートはさまざまだが、全体的なサポートは向上している。 JAWS、NVDA、Window-Eyesなどのスクリーンリーダーはlongdesc
をサポートしているが、Voiceover 4.0、Orca 2.32.0、および拡大鏡 Zoomtext 10.0はまだlongdesc
属性をサポートしていない。 Internet Explorer、Firefox、Opera、Chromeなどのブラウザはすべてlongdesc
をサポートしている。
注記:
embed
はユーザエージェントで広くサポートされているが、HTMLやXHTMLの有効な部分ではない。
番号やビュレットの形式を指定するtype
属性について、支援技術のサポートが一貫していない。
セマンティックな要素の中には、支援技術によって十分にサポートされていないものもある。サポートが限られる要素として、code
、del
、dfn
、ins
、kbd
、s
、sub
、sup
、tt
、qがよく知られている。これらの要素について、コンテンツ制作者には次を考慮することが推奨される。すなわち、利用者が内容を理解するために、またセマンティクスの理解が求められる部分ではその情報をテキストで提供するために、マークアップのセマンティックな意味に利用者がアクセスできる方法で、これらの要素を利用することである。
スクリーンリーダーの大部分が、em
、strong
、b
、i
について、自動的に通知をしない。
JAWSは、blockquote及びciteをサポートしている。Window-Eyesは、blockquote
、q
及びcite
をサポートしている。
Firefox 1.0以降、Opera 7.54以降、Mozilla 1.7.3以降 (以上、Windows版) は、q
要素の前後に自動的に引用符を生成するが、Windows用Internet Explorer 6は生成しない。
この実装方法は、支援技術が十分にサポートしておらず、ブラウザによるサポートも一定していない。
lang属性の値として、地域、筆記体、異体などを示すために、主言語コードの後にハイフン区切りで副言語コードを加えると、一部のスクリーンリーダーの古いバージョンでは、言語の切り替え時にエラーになることがある。
JAWS 8.0では、lang属性を元に自動的に言語を変更するように設定できるが、主言語コードとして指定できるような、主要な言語の間での切り替えのみである。地域別の言語異体を副言語コードとして指定しても、JAWSでは初期設定の異体が使用されるだろう。
古いバージョンのスクリーンリーダーの中には、言語を表す属性の指定にあたって、その言語が話されている地域、その言語を記述するために用いられている文字コードなどを表すために、言語コードに続けて記述されることがあるサブコードが指定されていると、エラーが発生するものがある。
JAWS 8.0の場合、lang属性の指定に基づいて読み上げに使用する言語を切り替えるように設定することができる。 ただし、JAWSは主要な言語のみに対応しており、lang属性のプライマリーコードに示されている言語を用いる。また、言語が用いられている地域を示すサブコードが続けて指定されている場合、プライマリーコードで指定されている言語のデフォルトとして設定されている方式を用いるようになっている。
link要素について、ユーザーエージェントと支援技術のサポートが一貫していない。
ユーザーエージェントの一部は、link要素で指定されている情報を表示する追加的なナビゲーションバーを提供する。MozillaとOperaの現在のバージョンがこの機能を提供する。IE 6.0とFirefox 1.5はこの機能を提供しないが、拡張機能やアドオンを通して利用できることがある。
link
要素のブラウザサポートに関する詳しい情報は、(X)HTMLにおける「link」要素 (英語)を参照。
ユーザーエージェントの一部では、link
要素で指定された情報を表示するナビゲーションバーが追加できる。MozillaとOperaの現在のバージョンがこの機能を提供する。IE 6.0とFirefox 1.5はこの機能を提供しないが、拡張機能やアドオンを通して利用できることがある。link
要素のブラウザサポートに関する詳しい情報は、The 'link'-Element in (X)HTMLを参照。
XHTML 1.1をサポートしていないユーザーエージェントのために、ルビのマークアップには、代替メカニズムとしてのrp
要素を含める。ルビのマークアップはXHTML 1.1のみで定義されているにもかかわらず、IE 5.0以降は、ruby
、rt
、rp
要素をHTML 4.01やXHTML 1.0で用いた場合もサポートする。
JAWSの最新版では、scope
属性のrow
とcol
という値をほとんどサポートしているが、まだいくつかの問題がある。Window-Eyesはscope
属性のサポートが一貫していない。これらのスクリーンリーダーの日本語版も同じである。JAWSのバージョン5以前、Window-Eyesの古いバージョンではscope
属性のサポートが一貫していない。
現時点で、見出しが1行目や1列目にないテーブルについて、さまざまな支援技術で一貫したサポートを確保したい場合は、
H43: データテーブルのデータセルを見出しセルと関連付けるために、id 属性及び headers 属性を使用する
にある複雑なテーブルに関する実装方法を採用してもよい。一方、見出しが1行目や1列目にある単純なテーブルについては、th
要素とtd
要素の利用を推奨する。
frame
要素とiframe
要素でのlongdesc
属性の使用は、支援技術によって十分にサポートされていない。代替として、この達成方法で述べられているtitle
属性の利用を推奨する。
ユーザーエージェントは、title
要素が指定してあるinput
要素にマウスオーバーしたときに、ツールチップを表示するだろう。
JAWSとWindow-Eyesでは、フォームコントロールがフォーカスを受けとったとき、label
要素が指定されていなければ、title
属性の内容を読み上げる。
JAWS 6.0以降では、label
要素とtitle
属性に異なる内容が指定されている場合、両方を読み上げるように設定できる。しかし、この設定方法を知っているユーザーは非常に少ない。
Window-Eyes 5.5には、フォーカスを受けとったアイテムの追加情報 (title属性を含む) を読み上げるホットキー (insert+E) がある。
ほとんどのスクリーンリーダーは、見出し要素を用いたナビゲーション機能を提供しており、見出しレベルに関する情報も提供している。また、Operaは、見出し要素ごとに移動できるメカニズムを提供している。他のユーザーエージェントでも、追加的なプラグインが見出し要素を用いたナビゲーション機能をサポートしている。プラグインに関しては、「参考リソース」のセクションを参照のこと。
編者注: ユーザーエージェントノートを更新するアクションがあるが、まだ正確な編集はできていない。
JAWS 5.0以降は、次のキーストロークを実装している。
Alt+左矢印: 前の文を読む
Alt+右矢印: 次の文を読む
Alt+テンキーの5: 現在の文を読む
Ctrl+テンキーの5: 現在のパラグラフを読む
リンクがフォーカスを受けているときにAlt+テンキーの5を押せば、フォーカスの変更なしにその文が読み上げられる。
リンクがフォーカスを受けているときにCtrl+テンキーの5を押せば、フォーカスの変更なしにそのパラグラフ全体が読み上げられる。
Window-Eyes 5.5には、現在の位置にある文やパラグラフを読み上げるホットキーがある。
Window-Eyesでインターネットを利用するには「ブラウズモード」でなければならないが、現在の位置にある文やパラグラフを読むホットキーは、バージョン6.1の「ブラウズモード」では動作しない。
Window-Eyesについて、周囲にあるリンクの文脈の読み上げに関する工場出荷時の初期設定は、次の通りである。
デスクトップマシンの設定
文字: Ctrl+テンキーの左矢印
単語: Ctrl+テンキーの右矢印
行: Ctrl+テンキーのCENTER
文:「ブラウズモード」では使用不可
(「次の文」のコマンドは、デスクトップモードの初期設定では定義されていないが、次の行を読むには下矢印を押す)
次のパラグラフ: P
前のパラグラフ: Shift+P
現在のパラグラフ:「ブラウズモード」では使用不可
ラップトップ
文字: Alt+Shift+<
前の単語: Alt+Shift+J
単語: Alt+Shift+K
次の単語: Alt+Shift+L
次の文: Alt+Shift+7
文:「ブラウズモード」では使用不可
次の文:「ブラウズモード」では使用不可
パラグラフ: ラップトップマシンの初期設定では定義されていない
次の行: Alt+Shift+U
行: Alt+Shift+I
次の行: Alt+Shift+O
Fire Voxの「親要素の読み上げ」というコマンド (Ctrl+Shift+U) は、フォーカス位置の変更なしに動作する。Fire Vox (英語) は、Firefox 1.0以降のために設計されたフリーのスクリーンリーダーであり、Windows、Macintosh、Linux用のFirefoxでサポートされている。
JAWSでこの実装方法を利用するためのコマンドは、「JAWSキー+T」である。
文脈に関する情報をプログラムが解釈できるようにリンクと関連付けたとしても、支援技術にはそのリンクからフォーカスを移動させずに親要素であるリスト項目を読み上げるコマンドがない。
optgroup
要素はスクリーンリーダーに広くサポートされているわけではない。
ユーザーエージェントは、option
要素とoptgroup
要素に対するlabel
属性のサポートが一貫しておらず、支援技術にも広くサポートされているわけではない。
title属性の読み上げについて、支援技術のサポートレベルは異なる。支援技術の一部は、ユーザーがtitle属性を通じて与えられる情報にアクセスする機能を実装していない。
title
属性がアクセシビリティ サポーテッドである場合のみ、title
属性を用いてこの実装方法で実装することは十分効果的である。この属性がアクセシビリティ サポーテッドとなるためには、全てのキーボードユーザーが (音声読み上げソフトウェアを利用しているかどうかに関わらず) title
属性の内容を利用できなけらばならない。
JAWS 6.2以降とWindow-Eyes 5.0以降は、abbr要素とacronym要素をサポートしている。これらの要素があれば、title属性をすべて読み上げるように設定できるが、初期設定ではオフであり、ユーザーが設定をオンにすることも稀である。
グラフィカルユーザーエージェントの多くは、abbr
要素やacronym
要素でマーク付けしたテキストに、点線を引いたり点線で囲んだりして描画する。加えて、要素にマウスオーバーしたときは、title属性の内容をツールチップで表示する。
Internet Explorer 7以前では、abbr
要素でマーク付けした内容にどのようなスタイルも追加されない。Internet Explorer 6以前では、その内容にマウスオーバーしたときもツールチップのような拡張表示はなされない。
あるユーザーエージェントや支援技術では、abbr
要素とacronym
要素が利用者に対して同じ方法で提示される。
現在の支援技術の中には、フォームフィールドで利用できるtitle属性の内容があるとき、利用者にフィードバックするものがある。
グラフィカルなユーザーエージェントの一部は、title
属性が指定されたフォームの上にマウスオーバーしたときに、ツールチップを表示する。しかし、現在のユーザーエージェントは、キーボードによるtitle
属性の内容へのアクセス方法を提供していない。
一般的なユーザーエージェントの一部では、短い時間 (およそ5秒) でツールチップが消えてしまう。このことが、マウスは利用できても細かな操作ができない利用者がtitle属性の内容にアクセスする難しさや、ツールチップを読むのに時間を要する利用者の困惑につながっている。
現在の多くのユーザエージェントにおいて、title属性コンテンツの表示を再調整したり、背景色を調整したり、再配置したり、制御したりすることは、大部分の利用者が困難である。
この達成方法は、要素に明示的に関連付けられたlabelがある場合にのみ使用できる。 labelがない場合、titleは、現在のユーザーエージェントのアクセシビリティAPIの名前として使用される。 後に記述されるヘルプテキストは、貧弱な名前になる。
HTML 及び XHTML の仕様では、明示的なラベルと黙示的なラベルの両方を認めている。しかし、支援技術の中には、黙示的なラベルを正しく扱えないものがある (例えば、<label>名前 <input type="text" name="firstname"></label>
)。
JAWS 7.10 を Windows XP で Internet Explorer 6.0 と Firefox 1.5 で検証したところ、仮想PCカーソルモードとフォームモードの両方で、テキストフィールドの明示的なラベルと黙示的なラベルを読み上げる。フォームモードでは、チェックボックスとラジオボタンの黙示的なラベルを読み上げない。
Window-Eyes 5.5 を Windows XP で Internet Explorer 6.0 と Firefox 1.5 で検証したところ、明示的にラベル付されたフォームフィールドを読み上げる。ブラウズモードでは、黙示的にラベル付されたフォームコントロールは読み上げられないが、ブラウズオフモードでコントロールからコントロールへ移動する際には、明示的なラベルは読み上げられる。
ユーザーエージェントは、title属性のあるinput要素上にマウスオーバーすると、ツールチップを表示する。title属性値は支援技術に引き渡され、多くのグラフィカルブラウザではツールチップとして表示される。ツールチップはキーボード操作では表示されないため、その情報は画面を見ているキーボードユーザーには提供されないと考えたほうがよい。
label
要素がない場合、そのフォームコントロールがフォーカスを受け取ったときに、JAWS と Window-Eyes は title
属性値を読み上げる。
JAWS 6.0 以降では、label
要素のラベルと title
属性値が異なる場合には、その両方を読み上げるように設定することが可能である。しかし、この設定があることを知っているユーザーはほとんどいない。
WindowEyes 5.5 では、ホットキーの Insert + E で、フォーカスのあるアイテムの title 属性値を含む追加の情報を提示できる。
ユーザーエージェントの中には、デフォルトではフォームのラベルにあるアスタリスク文字を読み上げないものがある (具体的には、Window-Eyes)。Window-Eyesのユーザーは、この設定を変更することができるが、多くのユーザーはその設定変更を行っていないと思われる。
JAWSは画像の代替テキストと隣接したテキストの間に空白を挿入しない。