ロービジョン(弱視)向けの代替スタイルシート
Webサイト(ホームページ)がWeb標準に準拠して適切に制作されていれば、表示されるWebページの「見た目のデザイン」は、スタイルシートというファイルで制御することができます。これを応用して、今日の一般的なブラウザでは、ユーザースタイルシートを用いてWebページの表示を「自分好みに」カスタマイズできるようになっています。つまり、ユーザー(サイトの閲覧者)が、自分用にオリジナルのスタイルシートを作ることによって、Webページを「自分が見やすいように」変更することができるのです。これは、アクセシビリティの観点で、特にロービジョン(弱視)のユーザーにとっては非常に有益な機能と言えます。
しかし、ユーザースタイルシートを作るには、CSS(Cascading Style Sheets)の記述法に関する知識が多少なりとも必要になります。Web制作に関わる人でもない限り、CSSに馴染みがないのが普通だと思いますので、その意味でユーザースタイルシートは、敷居が高いと言えるでしょう。
そこで、自分でユーザースタイルシートを作ることができないユーザーのために、Webサイト運営側で、よりアクセシブルな表示を可能にする代替スタイルシートを用意してみる、というのはいかがでしょうか?複数のスタイルシートを用意しておき、適用するスタイルシートをユーザーが切り替えられるようにしておくことで、サイトのコンテンツや情報構造を変えずに、「サイトの見た目のデザイン」を手軽に変更することができるのです。今回当サイトでは、ロービジョンユーザーのための代替スタイルシートをふたつ用意してみました。
- 黒地に黄文字
- クリーム地に黒文字
Firefoxをお使いの場合は、「表示」メニューの「スタイルシート」から、「ロービジョン向けCSS(黒地に黄文字)」または「ロービジョン向けCSS(クリーム地に黒文字)」を選ぶことができます。Operaをお使いの場合は、「表示」メニューの「スタイル」から、同様に選ぶことができます。
代替スタイルシートの作成と実装
このような代替スタイルシートを作成する場合の留意点ですが、ユーザースタイルシートが別途存在する場合は、そちらを優先させるべきなので、代替スタイルシートの各プロパティおよびその値には「!important」を記述しないように気をつけましょう。
なお、代替スタイルシートをWebページに適用するには、当該ページのHTML(XHTML)ファイルにおいて、<link>要素のrel属性の値を "alternate stylesheet" とし、title属性を明記する必要があります。tltle属性に書かれた値(文字列)が、FirefoxやOperaの「表示」メニューで選択肢として提示されるスタイル名になります。
さらに当サイトでは、代替スタイルシートではない、メインのCSSに対しても、<link>要素の中で、title属性を記述しています(title="標準スタイルシート")。これは、メインのCSSにtitle属性を付けていない場合、代替スタイルシートでの内容が「メインのCSSからの差分」と解釈されてしまうためです。メインのCSSによる視覚デザインを排除して、代替スタイルシートでゼロベースからデザインしたい場合は、このように、メインのCSSにもtitle属性を付けておくとよいでしょう。
代替スタイルシートの問題点
残念ではありますが、代替スタイルシートには、現時点でいくつかの問題があります。いずれも、ブラウザ側で代替スタイルシートの選択状況を保持(記憶)する仕組みがあれば解決する問題だと思いますので、今後のブラウザの機能改善に期待したいところです。
- 同一サイト内の別ページに遷移すると(<link>要素で同じ代替スタイルシートが読み込まれているページであっても)、代替スタイルシートが適用されなくなる。ページが変わるたびに、FirefoxやOperaの「表示」メニューで、代替スタイルシートを選び直さなければならない。
- ページのリロード(表示の更新)をすると、代替スタイルシートの適用が外されてしまう。再度、FirefoxやOperaの「表示」メニューで、代替スタイルシートを選び直さなければならない。
ロービジョンユーザーにとって適切な代替スタイルシートとは?
今回当サイトで用意した代替スタイルシートの設定内容(見た目のデザイン)ですが、ロービジョン(弱視)のユーザーにとって「本当に使いものになるか」については、議論の余地があるところだと思います。たとえば:
- デフォルト(初期状態)の文字サイズはもっと大きくした方が良いのではないか?
- 特に「クリーム地に黒文字」の場合、ページ内のレイアウトはメインのCSSのそれと同様にした方が良いのではないか?(というのも、このスタイルシートは、白背景がまぶしく感じられてしまうタイプのロービジョンに対応するためなので)
ロービジョン(弱視)と一口に言っても、その症状は様々だったりするので、「こうするのが正解」と断定するのは簡単ではないのですが(恐らくはサイトの要件によっても最適解が異なることでしょう)、こうした議論については、ぜひ実際のユーザーの方のご意見なども聞いてみたいところです。

コメントを投稿する
(投稿いただいたコメントは、当サイト管理者による承認後、公開させていただきます。なお、コメントの記入は、日本語でお願い致します。)