連載記事ウェブアクセシビリティを知ろう
連載27:非干渉(JIS X 8341-3解説(7))
渡辺 昌洋
2022年12月16日
「非干渉」もわかりづらいかもしれません。5.1.5の前半には次のように書かれています。
5.1.5 非干渉
技術がアクセシビリティ サポーテッドではない方法で用いられている場合,又は適合しない方法で用いられている場合,利用者がウェブページの他の部分へアクセスすることを妨げていない。加えて,全体としてウェブページは,次の全ての条件の下で適合要件を満たしている。
- a) 依存していない技術がユーザエージェントで有効になっている。
- b) 依存していない技術がユーザエージェントで無効になっている。
- c) 依存していない技術がユーザエージェントでサポートされていない。
5.1.1にあったように、あるコンテンツがアクセシビリティ対応できない場合に代替版を用意するという方法もあります。その場合には、アクセシビリティ対応した(技術がアクセシビリティ サポーテッドな方法で用いられている)コンテンツとアクセシビリティ対応していない(技術がアクセシビリティ サポーテッドではない方法で用いられている、または、適合しない方法で用いられている)コンテンツが混在することになります。代替版を提供しているため適合要件を満たすことができますが、アクセシビリティ対応していないコンテンツの影響により、アクセシビリティ対応しているコンテンツが利用できなくなる可能性があります。これが干渉ということになり、禁止されています。これを非干渉と呼んでいます。
さらに、a)からc)の条件下で適合要件を満たしていることが必要です。例えば、依存している技術としてHTMLとCSS、依存していない技術としてJavaScriptを使っている場合を考えてみましょう。JavaScriptを使って、メニューの上にカーソルを置くと詳細メニューが表示されるページはよくあります。詳細メニューはJavaScriptが有効でなければ、表示されないとします。その場合に対応するために、詳細メニューを別にHTMLでも提供しているとしましょう。このとき、適合の根拠になっているのはHTMLで詳細メニューを提供していることであると考えると、HTMLは依存する技術ということになります。一方、JavaScriptは依存していない技術となります。すなわち、JavaScriptがユーザエージェントで有効になっていても、無効になっていても、また、サポートされていなくても、HTMLの詳細メニューが参照できることが求められます。
さて、5.1.5の後半には次のように書かれています。
さらに,適合するために依存していないコンテンツも含めて,ページ上の全てのコンテンツには次の達成基準が適用される。なぜならば,これらを満たしていないことによって,ページの利用を妨げる可能性があるためである。
- 1.4.2(音声の制御の達成基準)
- 2.1.2(キーボードトラップなしの達成基準)
- 2.3.1[3回のせん(閃)光,又はしきい(閾)値以下の達成基準]
- 2.2.2(一時停止,停止及び非表示の達成基準)
ここに挙げられている4つの達成基準が満たされないと、ウェブページにアクセスすること自体が難しくなり、ウェブページが利用できないことになります。これらはすべてレベルAなので、レベルAに適合するためには、これらは必須なのだからそんなに強調しなくてもよいのではないかと思われるかもしれません。ここで注意すべきは、「依存していないコンテンツも含めて」とある点です。例えば、JavaScriptを使って、メニューの上にカーソルを置くと詳細メニューが表示されるときに、詳細メニューの内容をHTMLで提供していたとしても、JavaScriptの部分でキーボードがトラップされない(2.3.1を満たしている)必要があります。
以前から思っているのは、これら4つの達成基準が番号順に並んでいないのは何故なのだろうということです。いつも違和感があります。
引用元:JIS X 8341-3:2016 高齢者・障害者等配慮設計指針-情報通信における機器,ソフトウェア及びサービス-第3部:ウェブコンテンツ