構造と表現の分離

構造を記述するための HTML の要素が視覚的な表現のために利用されると,構造に基づいてそのページの内容を理解するUAは適切なナビゲーションを行うことができなくなる。例えば,ペ−ジリーダ(スクリーンリーダ)のような UA は「文字を大きく太く表示させるため」に用いられている <H1> を「一番重要な見出し」として読み上げてしまうかもしれない。HTML で構造を記述し,スタイルシートで視覚的表現をするということを可能な限り行うべきである。

的確な構造表現

「見出し」を表す <Hn> は,あくまで見出しである。<Hn>...</Hn> の中に書かれた内容は,多くの場合太字でサイズも大きく表現されるが,ブラウザによってはセンタリングされることもある。

「見出し」という役割を表すものであるのだ。したがって,<Hn>...</Hn> を文字を大きく太く表現する目的で用いてしまうと,文章の構造に基づいてページを読み上げる UA では,予期せぬところで「見出し」が登場し,文脈を失うということになる。また,文字が大きく太く表現されるというのは,あくまでそうされることが多いということであって,その表現方法は UA によって異なる。

また,見出しの階層的な構造の記述を適切に行うことも大切である。<H1> は一番重要な「見出し」,<H2> はその次に重要,<H3> はさらにその次というように,数字が若いほどその重要性が大きい見出しとなることはご存じであろう。

要素の視覚的表現に惑わされない

HTML で <BLOCKQUOTE> は長い引用を表す。多くのブラウザではこれらは前後で改行され,字下げされて表現される。しかし,字下げ目的で用いてはならない。この <BLOCKQUOTE> はあくまで引用という役割を持ったものであり,ブラウザによっては字下げとは異なった表現が用いられることもある。

同様に,リストはあくまで箇条書きを表すものである。多くのブラウザで字下げされて表現されるが,字下げ目的で用いてはならない。視覚的表現に気をとられすぎて,文書のきちんとした構造を見失ってはいけない。きちんとした構造があってこそ,それに見合った適切な装飾を行なうことができる。

<H4>ビタミンとは食物中に含まれていて,物質代謝の触媒として働き生体内で合成され得ない必須有機物質である。</H4>
<H5>ビタミン A</H5>
<BLOCKQUOTE>
<P>レチノールと,3-デヒドロレチノールの 2種がある。不足すると暗順応が遅れて夜盲症になるほか,角膜,粘膜,皮膚などの乾燥,角質化を引き起こす。とり過ぎると悪心,嘔吐,嗜眠などの症状が現れ,慢性症状としては発育停止,脱毛,貧血などを引き起こすこともある。成人男性(65kg)に 1日あたり必要摂取量は 750&micro;g である。</P>
</BLOCKQUOTE>
<H5>ビタミン K</H5>
<BLOCKQUOTE>
<P>フィロキノンとメナキノンの 2つの種類がある。消化管内の細菌によってメナキノンは合成される。細菌による合成量にばらつきがあるために必要摂取量は不明確であるが,不足すると血液凝固機転の阻害(プロトロンビン,VII,XI,X 因子の減少),脂肪吸収の阻害を起こす。</P>
</BLOCKQUOTE>

上の例は,まったくひどいとしかいいようがない。文字の大きさを変えるために <Hn> を使っている上に,字下げのために <BLOCKQUOTE> を使っている。こんな記述をしていてはアクセシビリティの向上,やさしい HTML などは到底見えてこない。

サイズの相対指定

フォントサイズやマージン,インデントの指定には絶対サイズと相対サイズでの指定方法がある。絶対指定は,文字の大きさやマージンを cm や pt で指定するやり方である。この方法ではユーザの環境によって大きさが変化することはない。一方,相対指定では em やパーセントなどを用いて指定する。この場合は画面の解像度や大きさによってサイズが異なる。

絶対指定をすると,ページの作者の思いどおりの外見を作り出すことができる。しかし,画面の幅・高さおよび解像度はユーザによってまちまちである。視力の低い人はページを拡大して見ているし,文字を大きくする設定をしているかもしれない。こんなときに「この文字のサイズは 〜cm です」と書かれていると面倒である。

<P>血液が腎を通過する際に,排泄機序によって除去される能率を表すのに<SPAN STYLE="font-size: 120%;">除去率 extraction ratio</SPAN> が用いられる。<SPAN </P>
<P>血液が腎を通過する際に,排泄機序によって除去される能率を表すのに<SPAN STYLE="font-size: 14pt;">除去率 extraction ratio</SPAN> が用いられる。</P>

血液が腎を通過する際に,排泄機序によって除去される能率を表すのに除去率 extraction ratio が用いられる。

血液が腎を通過する際に,排泄機序によって除去される能率を表すのに除去率 extraction ratio が用いられる。

同じように表現されていても,もしユーザが基準となるフォントの大きさを変えてしまったら,この 2つの例は異なって見える。ためしに,フォントサイズを大きくしてみるとよくわかるが,ある程度まで大きくすると,絶対指定された「強調」のサイズは,通常の文字のサイズより大きくなってしまうのである。製作者としては大きくしようとしてフォントサイズを指定したのだが,まったく逆のことになってしまっている。これでは正しい情報を伝えることは望めない。

一方で相対指定では,その環境にかかわらず,作者の意図を伝えることができる。120% などの相対指定を用いることによってユーザがすべての文字を大きくする設定をしてもその要素はさらに大きく表現される。また,マージンについても同様に,ユーザが画面の幅を狭くしていても,パーセント指定をしておけばその画面の幅の物理的な長さにかかわらず余白が確保される。

スタイルシートの活用

視覚障害者などの利用するテキストリーダには,HTML の構造を読んでいくものがある。もしその時に,表がレイアウトとして使われていたならば,ここから表,のように理解されてしまい,何がなんだかわからなくなってしまう。色の表現もそうだ。いきなり,ここは赤,といっても視覚障害者には何の意味も持たない。つまり構造の記述は表現の記述とは分離して書くべきである,ということなのだ。構造は構造,表現は表現と分離することで,発信される情報はひじょうに理解されやすいものとなる。


解決! センター化学 I
解決! センター化学 I ◆ Z 会出版