ruby
読み:ルビ
外語:ruby

 (X)HTMLで、ルビを表現するために追加された要素。Internet Explorer 5が独自機能として搭載して普及し、これがXHTML 1.0で正式に採用された。
目次

概要
 XHTMLでは、ruby、rb、rbc、rp、rt、rtc、の各要素を組み合わせてルビを表現する。
 元々はspan要素などに属性を持たせる方法が提案されていたが、これは実現しなかった。そこでMicrosoftが独自にruby要素として実装し、これが普及したのである。

特徴

問題
 ruby要素は、未対応のWebブラウザーでもある程度納得できる範囲で表示できるように、という配慮が盛り込まれている。
 このため複雑なギミックが仕込まれており、記述も実装も大変な仕様となった。
 非常に筋が悪い技術であるが、互換性等を最大限に配慮すると、このような仕様にならざるを得ない。要素だけで実現させるのであれば、誰が実装しても似たような仕様にしかならないだろう。

用例
 簡単な用例は、次の通り。

<ruby><rb>文章</rb><rt>ぶんしょう</rt></ruby>

 全体をruby要素に含め、ルビを振る対象をrb要素内、ルビをrt要素内に入れる。
 Webブラウザーが対応しているなら、これはルビとして表示される。

文章(ぶんしょう)

 なお、ruby要素未対応のWebブラウザーでは、要素自体が無視され「文章ぶんしょう」のように表示されてしまう。そこで、rp要素が用意されている。rt要素を囲むようにして使用する。

<ruby><rb>文章</rb><rp>(</rp><rt>ぶんしょう</rt><rp>)</rp></ruby>

 ruby要素対応のWebブラウザーはrp要素内を表示しない。未対応の環境では表示されるので、「文章(ぶんしょう)」のように表示可能で、何れでも違和感なく文章を表現することができる。

HTML
 XHTMLでは標準化されているが、単なるHTMLではHTML5でようやく標準化された。
 このため対応していないWebブラウザーも多いが、策定中は、属性とCSSで実現した方が良いのではないかという意見も出されていた。

再検索