Section 3 : 情報のアベイラビリティ(1)

 HTML に記述されるさまざまな要素についての情報を利用できる状態にしておくのもアクセシビリティと並んで重要なことである。

HREFLANG 属性

 Always with HTML の Section 8 で紹介した LANG 属性は,要素の言語を指定するものであったが,HREFLANG 属性は HREF 属性で指定した URI の指すリソースが何語で書かれているかを示すものである。

HREFLANG 属性
属性 値 解説
HREFLANG 言語コード HREF 属性の URI が示すファイルの言語。

この属性は <A> と <LINK> に指定されうる。もっとも単純な例としては,

<P>詳しくは,<A HREF="http://www.w3.org/TR/REC-html40/" HREFLANG="en">W3C のドキュメント</A>をご覧ください。</P>

のようにジャンプ先の言語を前もって示すのに使う。<LINK> では,次のように用いることも考えられる。<HTML> で LANG="ja" が指定されているとしてご覧いただきたい。

<LINK REL="alternate" HREF="index-en.htm" HREFLANG="en" TITLE="Index in English" LANG="en">
<LINK REL="alternate" HREF="index-fr.htm" HREFLANG="fr" TITLE="Index in French" LANG="en">

英語版,フランス語版のトップページがあることを示そうとしていることはおわかりいただけるだろうか。すなわち,現在の文書の代替として,英語で書かれた“index-en.htm”,フランス語で書かれた“index-fr.htm”があるということである。ここで,両方に LANG="en" が指定されているのは,<LINK> の TITLE 属性がいずれも英語で書かれているからである。LANG 属性はその要素の言語を指定するという違いを明確にしていただきたい。

LONGDESC 属性

 <IMG> は,画像が読めなかったり,ノングラフィカルな UA やスピーチデバイスを使用していたりするときのために,代替テキストとして ALT 属性を指定しなくてはならないのはご存じのとおりである。ここには画像の簡単な説明が書かれることが多いが,これを補完する意味での長い記述を LONGDESC 属性で指定することができる。

LONGDESC 属性
属性 値 解説
LONGDESC URI その要素についての長い説明が書かれた URI。

 また,これはフレーム定義を行ったときの <FRAME> にも指定可能である。この場合,LONGDESC 属性は TITLE 属性の補足に使われる。HTML 4.0 Transitional では <IFRAME> でも <FRAME> と同じ方法でこの属性を指定しうる。

 アクセシビリティの観点からすると,画像に LONGDESC 属性を指定するさいには,この LONGDESC 属性を解さない UA のために,LONGDESC 属性の指す URI と同じ場所へのリンクを張っておくのがよいだろう。

MEDIA 属性

 HTML ファイルともに配布されることの多くなった PDF ファイルはおもに印刷用である。このほかにも,多くのメディアで用いられるファイルが HTML を補完するように現れるだろう。

 MEDIA 属性は,<LINK> と <STYLE> に指定され,それぞれどんなメディアに適したものなのかを明示する。

MEDIA 属性
属性 値 解説
MEDIA メディア
(複数)
その要素(が示すもの)がどんなメディアに向いているかを示す。複数の場合はカンマで区切る。

 メディア記述は次のようなものがある。

screen
通常のコンピュータ画面。
print
印刷。ページで区切られたもの。
braille
点字。
aural
スピーチシンセサイザ。
tty
テレタイプなどの固定ピッチ文字を使用するメディア。
tv
解像度が低いテレビ画面など。
projection
プロジェクタ。
handheld
白黒,小画面の携帯デバイス。
all
種類を問わず,さまざまなメディアに適している。

 たとえば,PDF ファイルの例は Always with HTML の Section 6 で触れたが,これは MEDIA 属性を用いて次のように書くとさらによい。

<LINK REL="alternate" TYPE="application/pdf" MEDIA="print" HREF="...">

 スタイルシートにおいて,画面表示用と印刷用の CSS を使い分ける場合は,

<LINK REL="stylesheet" TYPE="text/css" MEDIA="screen" HREF="ach-scr.css">
<LINK REL="stylesheet" TYPE="text/css" MEDIA="print" HREF="ach-lpt.css">

と記述したり,<STYLE> を,

<STYLE TYPE="text/css" MEDIA="screen">
  ...
</STYLE>
<STYLE TYPE="text/css" MEDIA="print">
  ...
</STYLE>

のようにして対応することができるであろう。ちなみに,画面用,印刷用と同じであれば,

<LINK REL="stylesheet" TYPE="text/css" MEDIA="screen, print" HREF="ach.css">

とすればよい。

 おそらく,HTML および WWW の今後の発展にともなって,指定できるメディアなどは増えていくに違いない。