WCAG 2.0 実装方法集

メインコンテンツへスキップ

-

SVR4: 適合している代替バージョンの表示に関する設定を利用者が行えるようにする

適用(対象)

設定を保存するためにサーバサイドのスクリプトを用いて生成されたコンテンツ

これは、次の達成基準に関連する実装方法である:

解説

この実装方法の目的は、ウェブページの適合している代替バージョンの設定を利用者が選択できるメカニズムを提供することである。

利用者が適合している代替バージョンを見ることができるような設定を提供するにはいくつかの方法が可能である。一般的な方法としては、ウェブサーバがページを修正する、又は利用者を代替バージョンにリダイレクトするのに使うセッション又は永続的なクッキーを設定するサーバサイドのプロセスのトリガーとなるリンクを提供する方法がある。他の方法には、利用者がウェブページ又はサービスにアクセスする際にサインインするシステムへのログイン情報の一部として利用者ごとの選択肢を提供する方法がある。

不適合なページで提供されるメカニズムは、代替バージョンを必要とする利用者が、それを探して利用するためにアクセシブルである必要がある。そのメカニズム自体は宣言しているアクセシビリティレベルに適合しているべきである。

事例

事例1:ユーザー設定を保存するためにセッション又は永続的なクッキーを設定する

あるウェブサイトは、サイト内のページには「設定」ページへのリンクを提供している。このページには、サイトの代替バージョンを見るためのオプションがある。好みによってページのさまざまな見方があるかもしれないし、利用者はサイトの完全な代替バージョンを見たいかもしれない。その設定はサイト上で動画が含まれる部分ではキャプションを表示するものかもしれない。また、主となるサイトが、代替バージョンからしかわからないアクセシビリティ適合についての問題を含んでいるために提供されているのかもしれない。

あるウェブページの制作者はクッキーを使って設定を扱うことがある。それは、PHPのようなサーバサイドのスクリプトを用いて扱われるかもしれない。

設定のページは例えば次のように提供される:

コード例:

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <title>サイト設定</title>
  </head>
  <body>
      <h1>サイト設定</h1>
      <form id="form1" name="site_prefs" method="post" action="pref.php">
          <fieldset>
              <legend>どのバージョンのサイトを見たいですか?</legend>
              <input type="radio" name="site_pref" id="site_pref_reg" value="reg" />
              <label for="site_pref_reg">サイトの主バージョン</label>
              <input type="radio" name="site_pref" id="site_pref_axx" value="axx" />
              <label for="site_pref_axx">アクセシビリティ適合バージョン</label>
          </fieldset> 
      </form>
  </body>
  </html>

フォームは処理のためにpref.phpのファイルへと送信される。クッキーが設定され、この単純な例では、利用者のブラウザはサイトのトップページへと移動する。

pref.php:

コード例:

<?php
    if(isset($site_pref)) {
        setcookie("site_pref",$site_pref, time() + (86400 * 30)); //30日に設定
        header("location: http://www.example.com"); //トップページへとリダイレクト
    }
?>

トップページは利用者の設定を実装するコードから始まる。

index.php:

コード例:

<?
if(isset($site_pref)) {
	if($site_pref="axx") {
	header("location: ./accessible/index.php");
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
...

ログインを必要とするシステムでは、設定は利用者のデータベース記録に保存され、ユーザーが見るページを生成するサーバサイドのスクリプトによって参照される。

参考リソース

この参考リソースは、あくまでも情報提供のみが目的であり、推薦などを意味するものではない。

検証

チェックポイント

  1. そのサイトのページの表示方法についての設定を変更する。

  2. 設定そのもの、又は設定できるページへのリンクが不適合なページそれぞれから到達できる。

  3. ウェブページが選択した設定に応じて表示される。

  4. 設定が行われた際に、ウェブページが宣言通りに適合している。

  5. 結果となるページが元のページの適合している代替バージョンとなっている。

判定基準

注意: この実装方法が「達成基準を満たすことのできる実装方法」の一つである場合、このチェックポイントや判定基準を満たしていなければ、それはこの実装方法が正しく用いられていないことを意味するが、必ずしも達成基準を満たしていないことにはならない。場合によっては、別の実装方法によってその達成基準が満たされていることもありうる。

日本語訳における注記:

この文書の正式版は、W3Cサイトで公開されている英語の文書であり、この日本語訳には誤訳が含まれていることもありえます。なお、文中にある「日本語訳における注記」は、W3Cの原文にはないものであり、日本語訳監修者が追記したものです。