<rt> ルビの内容を指定する

取り扱い 現行の標準
カテゴリ なし
親にできる要素 <ruby>
子にできる要素 フレージング・コンテンツ
対応ブラウザ caniuseで確認

<rt>タグの説明

<rt>は、文字に対してルビをふる際に、実際にルビとして表示される内容を指定します。ルビを反映させる文字は<ruby>で指定します。

<rt>は、もともとInternet Explorerが独自に採用したタグでしたが、HTML5で標準仕様となり、HTML Living Standardへと引き継がれました。

現在、ルビで使用するのは以下のタグです。具体的な仕様は各ページで解説しています。

  • <ruby>:ルビを振る範囲を指定する
  • <rt>:ルビとして表示させる内容を指定する
  • <rp>:ルビの内容を囲うカッコを指定する

<rt>タグの特徴

  • ルビは該当する文字の二分の一の大きさに縮小され、上部に付随する形で表示されます。
  • ルビの表示に関する調整は、CSS(スタイルシート)で行えます。
  • 同一のページ内に複数使うことができます。ただし、この要素自体を入れ子にすることはできません。

<rt>に指定できる主な属性

グローバル属性
全てのHTML要素に指定できる共通の属性です。詳細は一覧表で解説します。
イベントハンドラ
全てのHTML要素に指定できるコンテンツ属性です。

<rt>の使い方とサンプル

HTMLでルビをマークアップしてみましょう。以下の例は、最もシンプルな書き方です。

HTML
<ruby>漢字<rt>かんじ</rt><ruby>にルビを振る。
表示確認
漢字かんじにルビを振る。

ルビは基本的に、元の文字の二分の一の大きさで表示されます。漢字一文字に対してふりがな二文字であれば収まりが良いのですが、文字数が噛み合わない場合は均等に配分されます。

HTML
ふりがなが多い場合、<ruby>6<rt>シックス</rt><ruby>、のように表示されます。
ふりがなが少ない場合、<ruby>豆腐皮<rt>ゆば</rt><ruby>、のように表示されます。
表示確認
ふりがなが多い場合、シックス、のように表示されます。

ふりがなが少ない場合、豆腐皮ゆば、のように表示されます。

このような自動配置が適切でないと判断した場合、文字と読みがなを厳密に対応させることができます。それぞれの文字と<rt>に入れるルビの内容を分けて書きます。

HTML
<ruby>漢<rt>かん</rt>字<rt>じ</rt><ruby>にルビを振る。
表示確認
かんにルビを振る。

<ruby>に対応していない環境を考慮する場合、ルビを収めるカッコを隠し要素として持つことができます。標準的な環境では<rp>の中身は表示されません。

HTML
<ruby>
	文字列<rp>(</rp><rt>もじれつ</rt><rp>)</rp>
</ruby>

<ruby>
	文<rp>(</rp><rt>も</rt><rp>)</rp>
	字<rp>(</rp><rt>じ</rt><rp>)</rp>
	列<rp>(</rp><rt>れつ</rt><rp>)</rp>
</ruby>
表示確認
文字列もじれつ

れつ

このような記述は、あまりにも煩雑に思われます。<ruby>は標準仕様に組み込まれており、ほとんどのブラウザで対応しているので、無理に<rp>を記述する必要性は低いでしょう。

<rt>に関連するHTMLタグ

文字列の表現を指定する要素
<div> ブロックレベル要素としての範囲を指定
<span> インライン要素としての範囲を指定する
<br> 改行を行う
<wbr> 文章の中で改行可能位置を指定する
<b> 文字を太字にする
<mark> 文章の中で目立たせたい箇所をマーキングする
<pre> ソースを整形済みテキストとして表示する
<bdi> ページの書字方向とは別の書字方向を指定する
<bdo> 書字方向を指定する
<ruby> ルビを振る文字列の範囲を指定する
<rt> ルビの内容を指定する
<rp> ルビが非対応な環境で読みがなを囲う記号を指定する
<rtc> ルビテキストの集まりを指定する
<sub> 下付き文字として表示する
<sup> 上付き文字として表示する
<details> 折りたたみ可能なディスクロージャー・ウィジェットを設置する
<summary> 折りたたみ可能なディスクロージャー・ウィジェットの概要を設定する