制作者の活動(PR)。

堀北真希うさぎ(うさ耳女子大生)
主な作品

制作者作成のイラストと動画(例)

ホームページリーダ対策。

音声ブラウザとしてもっとも良く利用されている『ホームページリーダ』での問題点と対策を解説します。

ホームページリーダ対策・目次。

ホームページリーダの知られざる盲点。

ホームページリーダは、インターネットエクスプローラのパーサを拝借しております。

このため、CSSスタイル定義ファイルは「screenメディア」向けのものを使う事になります。

この結果、音声ブラウザでは有効なアンカーやナヴィゲーションなどを「display: none;」プロパティで非表示にした場合、ホームページリーダでも非表示、すなわち読上げられないという事態になってしまいます。

では、どうすべきでしょうか。

このため、ホームページリーダでも問題無く読めるようにするには、「display: none;」プロパティで非表示にするのではなく、グラフィカルなメディアでは隠してしまうと言う手法を用いる事になります。

このテクニックをオフ・レフトと言います。

オフ・レフトの実際。(平成17年 9月 2日 更新)

オフ・レフトとは、画面の左端から遙か離れた箇所に追いやる事で、グラフィカルな環境では表示させる必要の無いコンテンツを隠してしまうテクニックです。

グラフィカルなブラウザでは画面の外に配置されるため見えませんが、非表示扱いではないので、音声ブラウザでは読上げの対象になります。

具体的にはいろいろな方法がありますが、最も簡単な方法は以下のようなものでしょう。

.forAural {
    position: absolute;
    top: 0em;
    left: -1000em;
    width: 900em;
    }
  1. position: absolute;」プロパティは、絶対座標で表示させるプロパティです。
  2. 次の「left: -1000em;」プロパティで、絶対座標で画面の左端から1,000文字分左の位置に左端を合せるようにしております。
  3. 最後の「width: 900em;」プロパティは、コンテンツが大き過ぎる場合に画面の左端に侵食して来ないようにするため、ボックスの大きさを900文字分に制限します。このブロックは画面の左端から1,000文字分左に置かれているのでボックスの右端が画面の左端に侵食する可能性が無くなると言う訳です。

  4. オペラ 7以降ではtopプロパティを設定していないとオフ・レフトした要素のパディングがクライアント領域の最下部に現れる事があるので忘れずに設定しておきましょう。値はオフ・レフトする各要素の中に極端に大きなものが無ければ0でいいでしょう。(平成17年 9月 2日)

実際にこのオフ・レフトを利用した例を『モバイル向けフルブラウザ対策』の「段組カラムには適切なナヴィゲーションを付けましょう」で実際に用いておりますのでご参照下さい。

その他のオフ・レフト

この他にも「text-indent: -1000em;」プロパティを当てる事で、やはり画面に左端の更に左に追いやる事も出来ます(この方法はブロックレヴェル方式のスタイルを当てている場合のみ有効)。

但し、この方法では背景画像, マージン, ボーダ, パディング, テキストの行の高さなどのプロパティの影響が画面に残るため、故意にそういう効果を狙う場合以外にはお勧め出来ません。

注意事項(平成16年12月25日)。

この方法で、画像を<img>要素を用いずに記述する事は可能ですが、この方法は非常に危険です。

その理由は、画像が無くても見えるスタイルにしましょうで解説しましたのでご一読下さい。

しらぎくのウェブサイト作成入門サイトマップ

ページ外へのご案内。

marguerite.site@gmail.com