<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor>
の
<dfn><code>rt</code></dfn>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ文字列</anchor>を表します。</p><section><h1>仕様書</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end> 
<cite xml:lang="en-US-x-hixie">HTML Standard</cite>, <time>2022-02-22T17:07:09.000Z</time>, <time>2022-02-23T06:01:50.804Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://html.spec.whatwg.org/#the-rt-element">https://html.spec.whatwg.org/#the-rt-element</anchor-external></li></ul></refs></section><section><h1></h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end><dl><dt><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名前空間</anchor></dt><dd><code class="URI"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">http://www.w3.org/1999/xhtml</anchor></code> (<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;7</anchor-internal>)</dd><dt><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">局所名</anchor></dt><dd><code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">rt</anchor></code></dd><dt><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">開始タグ</anchor></dt><dd>必須</dd><dt><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">終了タグ</anchor></dt><dd>省略可能 (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor>)、必須 (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTML</anchor>)</dd><dt>出現できる文脈</dt><dd><code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ruby</anchor></code>
の子供かつ <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">rb</anchor></code> の弟として高々2個、
<code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">rtc</anchor></code> の子供として1個以上</dd><dt><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容模型</anchor></dt><dd><code class="SGMLe">%<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">inline</anchor></code>、但し
<code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ruby</anchor></code> を除く</dd></dl></p></section><section><h1>属性</h1><figure class="short list"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> <code>rt</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor></figcaption><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">大域属性</anchor></li></ul><history xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><code>rtspan</code></li></ul></history></figure></section><section><h1>例</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> というか <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MSXML</anchor> は 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML名前空間</anchor><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">勧告</anchor>にまともに対応していないので、
色々と不思議なことが起こります。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML</anchor>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</anchor>を <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">レンダリング</anchor>させるに当たって、
単に <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ruby</anchor></code> 要素以下の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名前空間URI</anchor>
を <code class="XMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">xmlns</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor>で
<code class="URI"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">http://www.w3.org/1999/xhtml</anchor></code>
に指定したところで、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTML</anchor> の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ</anchor>としては扱われません。
しかし、<pre class="XML example code"><anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="html:ruby xmlns:html=&quot;http://www.w3.org/1999/xhtml&quot;">html:ruby xmlns:html=&quot;http://www.w3.org/1999/xhtml&quot;</anchor-external>
&gt;<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="html:rb">html:rb</anchor-external>基底文&lt;/html:rb
&gt;<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="html:rt">html:rt</anchor-external>ルビ文&lt;/html:rt
&gt;&lt;/html:ruby&gt;</pre>のように<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名前空間接頭辞</anchor>を <code class="XML">html</code>
にすれば、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTML</anchor>
の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ</anchor>と理解してくれるようです。
もちろん <code class="XMLa">xmlns:html</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor>があるので、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名前空間整形式</anchor>になります。</p><form xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" ref="comment"></form><section><h1>不思議解釈</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end>
間違って <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">rt</anchor></code> の中に <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">rp</anchor></code> を入れてしまった文書が世間には存在しているようです。
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor> <weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">2005-02-23 06:32:14 +00:00</weak>)</p><form xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" ref="comment"></form></section><section><h1>関連</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <strong>名前空間URI</strong>:
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ</anchor>モジュールは <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTML</anchor> で使われることを主に想定していますが、
特に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTML</anchor> に限定されているわけではありません。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTML 1.1</anchor> で使う時には<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名前空間URI</anchor> は
<code class="URI"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">http://www.w3.org/1999/xhtml</anchor></code> になりますが、
これは<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ</anchor>モジュールの規定ではなく、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTML 1.1</anchor>
の規定に基づきます。他の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ホスト言語</anchor>、例えば
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTML 2.0</anchor> では<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名前空間URI</anchor> は
<code class="URI"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">http://www.w3.org/2002/06/xhtml2/</anchor></code>
になっています。</p></section></section><section><h1>改行</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> 
稀に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ文字列</anchor>に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">改行</anchor>が入ることがあります。
<sw-see xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"> <anchor>ルビ</anchor> </sw-see></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="18" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[18]</anchor-end> 
<code>rt</code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容モデル</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">語句付内容</anchor>なので、
<code>br</code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>を使うことができます。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;17</anchor-internal></src></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[19]</anchor-end> 
また<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">改行</anchor>をそのまま書いて、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS</anchor>
<code>white-space:pre</code>
等でそれを表示に反映させることもできます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Chrome</anchor>
では、
<code>br</code>
でも
<code>white-space:pre</code>
でも<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">改行</anchor>が通常通りに反映されて表示されます。
<time>2022-02-23T06:03:58.600Z</time></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor>
は
<code>br</code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">改行</anchor>も、
<code>white-space:pre</code>
の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">改行</anchor>も、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">改行</anchor>として表示してくれません。
<time>2022-02-23T06:06:07.800Z</time></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="22" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[22]</anchor-end> 
ほとんど<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">バグ</anchor>と言って良いであろうこの不可思議な挙動は、
驚くべきことに 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS</anchor>
の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">仕様書</anchor>にそうしろと書かれています。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;21</anchor-internal></src></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="23" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[23]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor> の構文上まったく正当な <code>br</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の存在を無視したり、
<code>white-space:pre</code>
の挙動を他のほとんどの場合と違う特別扱いを要求したり、
この<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">仕様書</anchor>の規定は常軌を逸していると言わざるを得ません。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Chrome</anchor> がそれを完全無視しているのも頷けます。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="24" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[24]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> と <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS</anchor> の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">仕様書</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">奇癖</anchor>は、
<code xmlns="http://www.w3.org/1999/xhtml">rt</code>
だけでなく、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">基底文字列</anchor>内でも発症します。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">改行</anchor>の他に、
<code xmlns="http://www.w3.org/1999/xhtml">display:block</code>
なども機能しなくなります。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Chrome</anchor> はそれらの規定も無視しています。
ただし
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Chrome</anchor>
は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">基底文字列</anchor>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ文字列</anchor>の距離が固定されていて、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">改行</anchor>や
<code xmlns="http://www.w3.org/1999/xhtml">display:block</code>
によって<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">基底文字列</anchor>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ文字列</anchor>が重なって表示される(ことがある)という別の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">バグ</anchor>があります。</comment-p><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[21]</anchor-end> <cite xml:lang="en">CSS Ruby Annotation Layout Module Level 1</cite>, <time>2022-02-23T05:18:57.000Z</time>, <time>2022-02-23T06:06:01.697Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://drafts.csswg.org/css-ruby/#anon-gen-unbreak">https://drafts.csswg.org/css-ruby/#anon-gen-unbreak</anchor-external></li></ul></refs></section><section><h1>実装</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ</anchor>を含む文字列を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">コピー</anchor>しても、
<code>rt</code> の内容をコピーしません。
その実装の関係なのか、 <code>rt</code> の中身だけを選んで<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">コピー</anchor>すると、
何も<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">コピー</anchor>されないことがあります。
微妙な選択範囲の違いが何かあるのか、
<code>rt</code> の中身全体を選択したつもりでも、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">コピー</anchor>されるときとされないときがあって困りものです。
<time>2021-03-20T08:58:56.200Z</time></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="25" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[25]</anchor-end> 
<cite>Live DOM Viewer</cite>, <time>2023-08-03T08:29:35.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A%3Cp%3EABC%3Crt%3EXYZ">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A%3Cp%3EABC%3Crt%3EXYZ</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="26" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[26]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="25" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;25</anchor-internal> このように<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ</anchor>外に <code>rt</code> だけがあるとき、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Chrome</anchor> は普通に何もないように表示しますが、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> は空白の上に小字で <code>rt</code> を表示します。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Inspector</anchor> で見るとどちらのブラウザーも 
<code>display</code>
等特別な<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">指定<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">UASS</title></anchor>はありません。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> の挙動は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS</anchor> 関係なしのハードコードのスタイル制御でしょうか。
<time>2023-08-03T08:31:46.00Z</time></p><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[27]</anchor-end> <cite>Live DOM Viewer</cite>, <time>2023-08-03T08:33:11.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A%3Cruby%3EA%3Cspan%3EBC%3Crt%3EXYZ">http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A%3Cruby%3EA%3Cspan%3EBC%3Crt%3EXYZ</anchor-external></li></ul><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="28" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[28]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;27</anchor-internal> <code>ruby</code> と <code>rt</code> の間に無関係の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>が挟まっている場合 (歴代
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor> 仕様のいずれにも違反)。</p><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IE</anchor> : <code>rt</code> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ文字列</anchor>としてその前の文字列の上に小字で表示</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> : <code>rt</code> はその前の文字列に続く空白の上に小字で表示</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Chrome</anchor> : <code>rt</code> はその前の文字列に続けて同じサイズで表示</li></ul><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="29" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[29]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;27</anchor-internal> のような表示を某ウェブサービスの検索結果表示で見ました。
いつからあるサービスなのかは不明。
<code>ruby</code> の内外に気を配らずに <code>span</code> を挿入するためにこういう現象が起きているようで。
<time>2023-08-03T08:36:29.600Z</time></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="30" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[30]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;27</anchor-internal> 昔は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Microsoft Excel</anchor> に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor> を出力させたときもこういう要素構造になっていました。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="37" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[37]</anchor-end> 
最近の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Chrome</anchor> はなんか変な変更でもしたのかなあ?
無指定でも <code>text-align: center</code> でも、
変に偏って表示されて (規則性がよくわからない) 中央に来ないんだけど。
1文字なのに左端に表示されたりとか。</p></section><section><h1>歴史</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> この<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素型</anchor>は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 5</anchor> で最初に実装されました。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Gecko</anchor> 系<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">レンダリング・エンジン</anchor>で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ルビ</anchor>を解釈するための
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTMLルビサポート</anchor>という拡張ソフトウェアがあり、
<code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">rt</anchor></code> 要素型も実装しています。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> 仕様書:<ul><li><cite>Ruby</cite> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/1999/WD-ruby-19990322/#a2-3">http://www.w3.org/TR/1999/WD-ruby-19990322/#a2-3</anchor-external><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">単純ルビ</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">作業原案</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">規定</anchor>)</li></ul></li><li><cite>Ruby</cite> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/1999/WD-ruby-19990924/#ruby-sgml">http://www.w3.org/TR/1999/WD-ruby-19990924/#ruby-sgml</anchor-external><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">複雑ルビ</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">作業原案</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">参考</anchor>)</li></ul></li><li><cite>Ruby Annotation</cite> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/2001/REC-ruby-20010531/#rt">http://www.w3.org/TR/2001/REC-ruby-20010531/#rt</anchor-external><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTML</anchor>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">複雑ルビ</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">勧告</anchor></li></ul></li><li><cite>Ruby Annotation</cite> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/ruby#rt">http://www.w3.org/TR/ruby#rt</anchor-external><ul><li>最新版</li></ul></li></ul></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <cite xml:lang="en-US">Internationalization Tag Set (ITS) Version 1.0</cite>
( (<time>2007-04-03 09:11:18 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/its/#selection-local">http://www.w3.org/TR/its/#selection-local</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <cite xml:lang="en">Web Applications 1.0 r7611 Update rt/rp sections to match newer ruby section.</cite>
( (<time>2012-12-30 13:21:00 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://html5.org/tools/web-apps-tracker?from=7610&amp;to=7611">http://html5.org/tools/web-apps-tracker?from=7610&amp;to=7611</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> <cite xml:lang="en">Support rb and rtc elements in the parser (ruby) · whatwg/html@8d1c8af</cite>
(<time>2015-11-11 20:57:50 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/8d1c8affec71058de29f8051cb2fa7f7bbad1fe6">https://github.com/whatwg/html/commit/8d1c8affec71058de29f8051cb2fa7f7bbad1fe6</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <cite xml:lang="en">innerText: include parentheses around &lt;rt&gt; if there's no &lt;rp&gt; · Issue #1801 · whatwg/html</cite>
(<time>2016-12-04 11:34:49 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/issues/1801">https://github.com/whatwg/html/issues/1801</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[31]</anchor-end> <cite xml:lang="ja">水卜麻美×安住紳一郎×大下容子×松丸友紀×伊藤利尋×高瀬耕造がクロストーク! テレビ70年特番「アナテレビ」 |NHK_PR|NHKオンライン</cite>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">日本放送協会</anchor>, <time>2023-08-29T03:08:24.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://www6.nhk.or.jp/nhkpr/post/original.html?i=38257">https://www6.nhk.or.jp/nhkpr/post/original.html?i=38257</anchor-external></p><blockquote><pre class="HTML code">&lt;h2&gt;ありのままの映像を&lt;br class=&quot;br-sp&quot;&gt;言葉にする…「&lt;ruby&gt;絵解&lt;rt style=&quot;position: relative; top: 0.4ex;&quot;&gt;えと&lt;/rt&gt;&lt;/ruby&gt;き」&lt;/h2&gt;</pre></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="32" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[32]</anchor-end> 
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;31</anchor-internal>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Chrome</anchor> だと <code>position</code>, <code>top</code> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">レンダリング</anchor>に影響しないようです。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">開発者ツール</anchor>で見ると
<code>top</code> に <code>position: static</code> では効果がないと案内が出ているので、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Chrome</anchor> では <code>rt</code> に暗黙の <code>position: static</code> が強制されていると思われます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="33" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[33]</anchor-end> 
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;31</anchor-internal>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> だと <code>top</code> によってほんのわずかに<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">親文字列</anchor>寄りに<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">レンダリング</anchor>されます。
個人的には誤差レベルであってもなくても気づくかどうか、敢えて指定するまでもないものに思われます。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">NHK</anchor> は別サービスで <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> への対応を打ち切るような企業なので (<sw-see xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"> <anchor>NHK</anchor> </sw-see>)、
ここで <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor> のために調整したのかは疑問が残ります。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="34" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[34]</anchor-end> だとするとこれはどの<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Webブラウザー</anchor>のための指定なのでしょうね?</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="35" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[35]</anchor-end> <cite xml:lang="ja">「関東大震災」から100年…カラーでよみがえる光景とは NHKスペシャル「映像記録 関東大震災 帝都壊滅の三日間」(前・後編) |NHK_PR|NHKオンライン</cite>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">日本放送協会</anchor>, <time>2023-08-29T03:15:13.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://www6.nhk.or.jp/nhkpr/post/original.html?i=39752">https://www6.nhk.or.jp/nhkpr/post/original.html?i=39752</anchor-external></p><blockquote><pre class="HTML code">&lt;p&gt;震災当時、両国駅に勤務していた外山 &lt;ruby&gt;恂&lt;rt style=&quot;position: relative; top: 0.4ex;&quot;&gt;まこと&lt;/rt&gt;&lt;/ruby&gt;さんが記した一編の手記。被害が広がる街や火災旋風の中で逃げる人々の様子、外山さんが離散した家族を見つけ出す過程が記された手記を朗読します。(読み手:小室 等)&lt;/p&gt;</pre></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="36" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[36]</anchor-end> 
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;31</anchor-internal> 隣の <code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">class</anchor>=&quot;br-sp&quot;</code> と違って <code>class=&quot;&quot;</code> でなく
<code>style=&quot;&quot;</code> を使っているので <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ad hoc</anchor> なものとも思いましたが、
他でも <code>rt</code> で <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="35" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;35</anchor-internal> のようにまったく同じ指定があるので、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">振り仮名</anchor>はすべてこの形になっていると推測されます。
どうして <code>class=&quot;&quot;</code> にしないのかは謎ですが、
システム開発の段階や分担の違いか何かの現れでしょうかね。
なお <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;31</anchor-internal> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">見出し</anchor>中ですが、 <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="35" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;35</anchor-internal> だと関連番組リストの説明文中なので、
出現位置にも関係していないと思われます。</p></section></body></html>