ruby 要素
ルビ(ふりがな)を振るテキストの範囲を表す。
ルビとは文章内の任意の文字に対するふりがな、説明、異なる読み方などの役割を持つ文字を、本文より小さな文字で、上部、下部に表示するものです。
ruby 要素は、ルビ(ふりがな)を振るテキストの範囲を表します。
この要素内に対象のテキストを配置して、rt 要素でルビテキストを指定します。また、ルビに対応していないブラウザ用に rp 要素も使用することができます。
さらに、rb 要素でルビをつけたい文字を分割したり、rtc 要素でルビをグループ化して、2種類のルビをつけることもできます。
日本語の場合、下記の例のように単語ごとに ruby 要素で指定した上で、rt 要素を使用してルビを振るような使い方が考えられます。
ルビ(ふりがな)を振るテキストの範囲を表す。
<p><ruby>日本語<rt>にほんご</rt></ruby></p>
rt 要素は、直前のテキストに対するルビ(ふりがな)を表します。
この要素は、ruby 要素の子要素として使用します。
ルビを付けられるテキストの1文字ずつに、ルビを対応付けられない場合や、テキスト全体に及ぶ意味的な注釈によく使われます。
ルビ(ふりがな)を表す。
<p><ruby>百舌鳥<rt>もず</rt></ruby><br> <ruby>今日<rt>today</rt></ruby><br> <ruby>閄<rt>ものかげからきゅうにとびだしてひとをおどろかせるときにはっするこえ</rt></ruby></p>
rp 要素はルビをサポートしていないブラウザのためにルビを囲む括弧記号を表します。
ルビに対応していない環境においては rp 要素の内容はそのまま表示されますが、対応している環境では非表示になります。これにより、ルビを括弧で囲んで記述しておき、その括弧部分を rp 要素で指定しておくことで、ルビに対応する環境においては括弧抜きでルビが表示され、非対応環境では、括弧付きで通常のテキストのように表示されます。
この要素は、ruby 要素の子要素として使用します。
ruby 要素内に複数の rt 要素が存在する場合、ルビ対象テキストとルビを関連付けます。
ルビをサポートしていないブラウザのためにルビを囲む括弧記号を表す。
<p><ruby>半<rp>(</rp><rt>はん</rt><rp>)</rp>可<rp>(</rp><rt>か</rt><rp>)</rp>通<rp>(</rp><rt>つう</rt><rp>)</rp></ruby></p>
sup 要素は、数式や化学式の添字などで使用される上付き文字で表示したい場合に使用します。
単に文字が上付きになるという表示の見栄えを目的として sup 要素を使用してはいけません。 この要素が無ければ意味が変わってしまう場合にのみ使用します。
上付き文字を表す。
なし
<p>Puis-je parler à M<sup>lle</sup> Brown ?</p>
上付き文字の大きさはブラウザによります。
sub 要素は、数式や化学式の添字などで使用される下付き文字で表示したい場合に使用します。
単に文字が下付きになるという表示の見栄えを目的として sub 要素を使用してはいけません。 この要素が無ければ意味が変わってしまう場合にのみ使用します。
下付き文字を表す。
なし
<p>ペットボトルで用いられる PETの化学式は (C<sub>10</sub>H<sub>8</sub>O<sub>4</sub>)<sub>n</sub>です。</p>
下付き文字の大きさはブラウザによります。
details 要素は、普段は非表示にされているが、ユーザが詳細表示したいときだけ表示される要素を記述します。
通常は、「要約・キャプション」などの概要説明のみが表示され、ブラウザがサポートする何らかの詳細表示ボタン(多くのブラウザでは「詳細」)を押した際に詳細情報が表示されます。
普段は非表示にされているが、ユーザが詳細表示したいときだけ表示される要素を記述する。
属性名 | 属性値 | 説明 | 必須 |
---|---|---|---|
open | 詳細情報表示 | 詳細情報が見られる状態で表示される | × |
summary 要素を記述しないと、多くのブラウザでは「詳細」と表示されます。
open 属性は、記述されていない場合は「詳細」をクリックすると詳細情報が表示されますが、記述されている場合は最初から詳細情報が表示されています。
<details> <-- open なし --> <div>詳細1</div> <div>詳細2</div> <div>詳細3</div> </details> ~ ~ <details open> <-- open あり --> <div>詳細1</div> <div>詳細2</div> <div>詳細3</div> </details>
summary 要素が記述されていたら、「詳細」の代わりに summary の内容が表示されます。
<details> <summary>見出し</summary> <div>詳細1</div> <div>詳細2</div> <div>詳細3</div> </details> ~ ~ <details> <summary>オプション</summary> <input type="checkbox">オプション1<br> <input type="checkbox">オプション2<br> <input type="checkbox">オプション3<br> </details> ~ ~ <details> <summary>瀬を早み</summary> <p>岩にせかるる 滝川の われても末に 逢はむとぞ思ふ</p> </details>
ダイアログボックスやインスペクターやウィンドウのような対話的コンポーネントを使用する際などに使用します。
dialog 要素は、ダイアログを表示します。
ダイアログを表示する。JavaScript でダイアログの表示・クローズを制御することが可能。
属性名 | 属性値 | 説明 | 必須 |
---|---|---|---|
open | ダイアログ表示 | ダイアログが見られる状態で表示される | × |
open 属性を指定すると最初から表示されます。
<dialog open> <div>タイトル</div> 本文1<br> 本文2<br> </dialog>
open 属性を指定しない場合は最初からは表示されませんので、Javascript で show() あるいは showModal() で表示する必要があります。
ダイアログからの値は、ダイアログの close イベントで、this.returnValue として受け取ることができます。
「入力」ボタンをクリックしてみてください。
好きな言葉:<span id="favoriteWord"></span><br> <dialog id="dialog1" onclose="favoriteWord.textContent = this.returnValue;"> <div>好きな言葉は?</div> <input type="text" id="word"> <button onclick="dialog1.close(word.value);">OK</button> </dialog> <button onclick="dialog1.showModal();">入力</button>
アラビア語やヘブライ語のように右から左に記述する言語を表記する際などに使用します。
bdi 要素は、双方向テキスト書式という目的において、その前後から孤立させることになるテキストの範囲を表します。
例えば、左から右に読む英語と、右から左に読むアラビア語が混ざるような双方向テキストにおいて、周囲の方向と独立して存在する区分を示すのに用いられます。
双方向テキスト書式という目的において、その前後から孤立させることになるテキストの範囲を表す。
なし
<ul> <li>太郎 : 2020年05月01日</li> <li>أَسْعَد : 2020年05月01日</li> <li><bdi>أَسْعَد</bdi> : 2020年05月01日</li> <li><bdi style="display:inline-block;">أَسْعَد</bdi> : 2020年05月01日</li> </ul>
bdo 要素は、テキストに対して明示的に書字方向を指定します。bdo 要素に対する dir 属性は必須属性となり、ltr、rtl、どちらかの値を指定する必要があります。
テキストに対して明示的に書字方向を表す。
属性名 | 属性値 | 説明 | 必須 |
---|---|---|---|
dir | ltr | 「左から右へ」を指定 | ○ |
rtl | 「右から左へ」を指定 |
<p>أَسْعَد : 2020年05月01日</p> <p>أَسْعَد<bdo dir="ltr"> : 2020年05月01日</bdo></p>