W3C TPAC 2010 で CSS3 Writing Modes は…
今月初め、フランスのリオンでのW3C総会 TPAC 2010 のCSS WG会議で、CSS3 Writing Modes仕様について集中して審議されました。
結果は、石井宏治さん(@kojiishi)がツイッターで報告:
縦書きは順調。論理方向は一歩前進したけど及ばず、でも、継続審議にはなった。EPUB3の最低限ゴールからすれば、合格。でも個人的にはちょっと残念。状況からすれば仕方ないか、論理方向を支持する声は国内でも多くはないし。でも蓋を開けると文句噴出かなぁ、という気はします。難しい。
[3 Nov @kojiishi]
このとき議論されたこの時点でのCSS3 Writing Modes仕様(11月2日版)は次のものです:
- CSS Writing Modes Module Level 3
Editor’s Draft 2 November 2010
※現在の最新版は:http://dev.w3.org/csswg/css3-writing-modes/
やはり論理プロパティ(8. Logical Properties and Values)については議論になり、残念ながら合意までには至らなかったようです。でも以前は反対していた人たちが、最低限の機能(margin と padding のショートハンドの logical キーワードなど)については必要性を認めるようになって、今後も議論を継続ということになったのは一歩前進です。
もうひとつ引用:
CSS WGのDanielから「今年はアジアからの参加者が過去になく多い、なぜだ?」と聞かれた。縦書きだ、と言ったら、うん、それだけ興味を持ってくれるなら日本で何かやらなければ、と言ってくれた。
みんなの貢献が将来につながります。多謝!
[3 Nov @kojiishi]
論理プロパティの必要性
例えばインデント(字下げ)の指定に横書きでは左アキ(margin-left)、縦書きでは上アキ(margin-top)などと物理方向を常に意識した指定が必要ということは制作者にとってとても不便だし、縦書きコンテンツを縦書き非対応のブラウザで横書きで表示した場合に、レイアウトが崩れて正常に読めないものになってしまうなど問題があります。
参考:「縦書きのときの方向指定問題」
それなら縦書きのとき「left」が上を指すように方向の定義を変えるという案もあったのですが、そうすると物理方向(top/right/bottom/left)は書字方向によらず絶対的な方向であるとしてきたCSS仕様の整合性を崩すことになってしまいます。
CSS仕様は中東のRTL(Right-to-Left:右から左への横書き)言語にも対応していますが、その場合、行頭側を空けるインデントの指定には margin-right を使う必要があります。RTL言語を含む多言語対応のウェブページの制作においてはCSSの「left」と「right」を入れ替える必要があり、制作者に負担が強いられているのが現状です(例えば次の変換ツールがこのために使われてます:CSS Janus)。もしも、RTLなら「left」が右を指すとすればCSSの変換は不要になりますが、左右の意味が逆になるのでは混乱するし、今さらそのようなCSSの仕様の変更は不可能です。
論理プロパティの案ならば、RTL言語にも、モンゴル語の左から右への縦書き(writing-mode: vertical-lr)にも有用です。
論理プロパティを別仕様に分離したうえで、CSS3 Writing Modes 公式ドラフト公開へ
CSS3 Writing Modes は、継続審議となった論理プロパティ(8. Logical Properties and Values)を別仕様に分離した上で、近いうちにFPWD(First Public Working Draft:最初のW3C公式ドラフト)となる見込みです。(その準備中の最新版のEditor’s Draft:http://dev.w3.org/csswg/css3-writing-modes/)
来年5月に勧告予定のEPUB3.0には残念ながら論理プロパティ仕様は入らず、縦書きと横書きではスタイルシートを書き直すことが必要になりそうです(インデントの指定に横書きでは margin-left、縦書きでは margin-top など)。これに対処するために、スタイルシートの縦書き/横書き変換を支援するツールなどが提供されることになると思います(論理方向 margin-start などで指定したものから縦横それぞれ用に変換するなど)。
しかし、これは論理プロパティ仕様の標準化がEPUB3.0のスケジュールに間に合わないための暫定的な対策であり、将来EPUBやWebでの縦書きを本格的に使えるものにするためには、やはり論理プロパティの標準化が欠かせません。
論理プロパティ仕様は、新しいCSS3モジュールの Editor’s Draft としてスタートすることになると思います。できるだけ早期にこの論理プロパティ仕様を完成させ、Webでの縦書きで使えるものにし、EPUB3の改訂版(EPUB3.1か)で採用されるようにすることが目標です。
実装が進んでいるCSS縦書きと論理プロパティ
標準化がまだこれからの論理プロパティですが、ドラフト案のものはすでに幾つか実装が進んでいます。
Antenna House Formatter は、CSS縦書きと論理プロパティを実装しています。少し前のドラフト仕様で 「EPUB仕様の日本語組版拡張を目指して(Version 0.8)」 にある writing-mode と論理プロパティに対応してます。
また、株式会社GNN「ブログ出版局」のCopper PDFという製品でも、CSS縦書きと論理プロパティが実装されています。(新・ブログ出版局管理人ブログにその説明とデモサイトの案内があります。)
ブラウザ Safari や Chrome のエンジンである WebKit での、縦書きと論理プロパティの実装も進んでいるようです(-webkit-writing-mode: vertical-rl や -webkit-margin-before、-webkit-logical-width などのプロパティが最新のWebKit Nightly Buildsで使えます)。
関連記事
- EPUB3.0へのCSS3採用の推進に関して [アンテナハウスのブログ I love software]
- 縦書き実現へと向かうEPUBと標準規格の魅力 [村田真,ITmedia]
- CSS3で縦書きスタイルを、電子出版の未来のために。日本発で提案中 [Publickey]
- 電子書籍フォーマット「EPUB」で縦書きとルビのサポート、来年5月には仕様完成の見通し [Publickey]
- CSS3が日本語の禁則処理、傍点、縦書きなど対応へ、ドラフト公開 [Publickey]
- 電子書籍の(なかなか)明けない夜明け 第4回 番外編:「電子書籍交換フォーマット」の正体を総務省に聞く [小形克宏,Internet Watch]
※記事の後半のほうで、「EPUB日本語拡張仕様策定」、「次世代ブラウザ(HTML5とCSS3)の縦書きレイアウトの規格化」ということに触れられています。
(敬称略)