ルビについて Re: 互換性を持たないならrp要素もいらない/親要素を改名しちゃう?

鈴見咲君高 <szmml@h12u.com> wrote on 2010/02/24 21:13:22
> 鈴見咲です。村上さんのお返事を受けて根本のところでの勘違いに気づいたりし
> てます。
> 
> もとの話題に出てきたSuikaWikiのこのページ↓なんですが、
> http://suika.fam.cx/~wakaba/wiki/sw/n/%E6%8E%92%E4%BB%96%E7%9A%84XML%E6%AD%A3%E6%BA%96%E5%8C%96
> 
> これ、UAがルビと認識した上での描画ではなくて、CSSによる指定に従ってそ
> れっぽく描画されているだけなんですね。ルビ関連要素は少なくとも「何らかの
> 要素」としては認識されていて、それにCSSの効果が生きているから二つのルビ
> が対象の上下に配置されているように見える、と。
> 
> だから現時点でもOpera10, IE8, Firefox3, Google Chrome, Safari4, それから
> Lunascape にある三種のエンジンのどれでみてもそれっぽく表示できる一方で、
> UAとして「複雑ルビ」と解釈しているわけではない。

そうです。このページは擬似的にCSSで両側のルビに見えるようにしているだけ
で、XHTMLのRuby Annotation仕様 http://www.w3.org/TR/ruby/ の複雑ルビが
使われているわけではありません。(XHTMLの複雑ルビは rbc, rtc 要素を使う
ものだけど、このページではそれらは使われてません)

> 
> あと、当のCSSの指定は意外に簡素なもので、たとえばルビの部分が行末に来た
> りするとあまりいい感じには処理してくれなさそうです。検証してませんが。
> 
> いや、どのブラウザでもある程度ルビ関連要素をルビと解釈した上で表示できる
> ようになったのかと思ってしまいました。ほかのサイトではほぼ見たことがない
> ので気づいて当然だったのですが。失礼いたしました。っていうかこういう理解
> で合ってます?

はい。

HTMLでのルビは、IE5 (1999年)での実装がまず出来て、そのあとで XHTML の
Ruby Annotation 仕様が出来て複雑ルビが定義されたものの、それは実装される
ことがなかったために HTML5 では採用されず、結局IEのルビ実装と互換性のあ
る仕様になったということのようです。

ルビの表示には、CSS3 Ruby Module が関係します。

CSS3 Ruby Module
W3C Candidate Recommendation 14 May 2003
http://www.w3.org/TR/css3-ruby/

この仕様(ブラウザで実装されていない)も HTML5 のルビの仕様で使えるよう
に修正されることになるはずです。

>> 日本語組版でのルビとXHTMLとHTML5でのルビのマークアップの例が次のところに
>> まとめられています。参考になるかと思います:
>> http://www.w3.org/International/datespace/2010/02/jlreq-examples/index.html

これをまとめた Richard Ishida 氏 (W3C Internationalization Activity Lead)
が CSS3 Ruby Module のエディターとなり、これから仕様の見直しがされること
になりそうです。


-- 
村上 真雄 (MURAKAMI Shinyu)
http://twitter.com/MurakamiShinyu
Antenna House Formatter:
http://www.antenna.co.jp/AHF/

Received on Wednesday, 24 February 2010 14:57:34 UTC