Ruby要素は固有名詞の読み上げに寄与するか

固有名詞や専門用語、ブランド名の音声読み上げで問題提起しましたが、現状では、変わった読みかたをする固有名詞や専門用語、ブランド名などを、音声ブラウザや読み上げソフトで意図通りに読ませることが難しいです。

実はHTMLには、<ruby>という要素があるのですが(rubyとは「ルビ」つまり振り仮名のことです)、これを使うという手もあるのでは?と思い、ちょっと調べてみました。

具体的な<ruby>要素の使いかたは、以下のような具合です。

<ruby><rb>御手洗</rb><rp>(</rp><rt>みたらい</rt><rp>)</rp></ruby>さん

  • <ruby></ruby>で全体を囲む。
  • <rb></rb>で対象となる表記(ベーステキスト)をマークアップする。
  • <rt></rt>でベーステキストのルビテキスト(読みかた)を示す。
  • <ruby>要素をレンダリングできないブラウザのために、<rp></rp>要素を使って、ベーステキストとルビを視覚的に分離する文字を挿入する。

特にスタイルシートで特別な指定をしていない限り、Internet Explorer 5以降であれば、漢字の上に平仮名が小さく表示されます。それ以外のブラウザでは、おそらく漢字の後に平仮名がカッコ付きで表示されるでしょう。XHTML 1.1から正式になるそうで、まだ、対応していないブラウザが大半というのが現状です。

さて、この<ruby>の読み上げですが、<rb>のベーステキストは読み上げずに、<rt>(ルビテキスト)のみを読み上げてくれるのが理想ですね。ところが実際には、まだそうはなっていないようで、音声読み上げツールによって挙動が異なる、という状況です(ミツエーリンクスさんのアクセシビリティPodcastによると、IBMの「ホームページ・リーダー」3.04高知システム開発の「ネットリーダー」のみのようです)。

いずれXHTML 1.1が普及することになると思いますが、それを受けて、徐々に<ruby>要素の音声読み上げ対応がスタンダードになってくれば、よりアクセシビリティに優れたサイトがつくりやすくなる(少なくとも、変わった読みかたをする語に対する適切な読み上げが可能になる)...と期待したいところです。