Re: CSS 2.1のプロパティのうち縦書きによって影響を受けるもの

村上です。

"MURATA Makoto (FAMILY Given)" <eb2m-mrt@asahi-net.or.jp> wrote on
2010/06/22 0:16:32
> CSS2.1のプロパティで縦書き導入によって影響を受けるものの一覧を作ろうと
> 考えて作業しています。
> 
> まず、
> 
> http://www.w3.org/TR/CSS2/propidx.html
> 
> にあるプロパティ一覧のうち、名前または値に、left, right, top, bottom,
> height, width, before, after, start, endがあるものをすべて抜き出して
> みました。
> 
> まず、border, margin, padding関係は、とうぜん縦書きによって再考が
...

> それ以外のものを次に示します。この中から、縦書き導入によって影響を
> 受けるものの一覧をどなたか作っていただけます?CSSは私は詳しくない
> ので、詳しいかたのご協力に期待しています。


> 'azimuth' 
> 'cue-after' 
> 'cue-before' 
> 'cue' 
> 'pause-after' 
> 'pause-before' 

無関係。これらは aural style sheet(音声読み上げスタイルシート)用なので、
visual の書字方向とは関係ありません。

> 'background-position' 

背景画像位置の指定は左上を原点とすることになっています。これは 
direction: rtl の場合でも変わらないので、縦書き(writing-mode: tb-rl)になっ
ても変わらないはずです。

もしも左横書きのときには左上に、右縦書きのときには右上に原点を変える必要
があるという場合は、それぞれに別なスタイル指定が必要になります。
(background-position の値に before, after, start, end も可能になれば、
それが共通の指定でできるようになります。)

> 'bottom' 
> 'left' 
> 'right' 
> 'top' 

これら、位置指定のプロパティの上下左右は物理的な上下左右です。
(書字方向相対で位置指定をできるようにするためには、before, after, start,
end という論理的プロパティの導入が必要です。)

> 'caption-side' 

旧CSS2.0 には、top, bottom, left, right の4方向ともあったのが、CSS2.1 で 
top, bottom だけになったものです。CSS3 Table で再び4方向とも可能になる予
定とされています。

top, bottom のみをサポートするUAでは、右縦書きでは top は右、bottom は左
に配置ということになるのが自然です。

4方向ともサポートするUAでは、縦書きでも上下左右は物理的な上下左右で配置
することになるはずです。
(書字方向相対で指定をできるようにするためには、before, after, start,
end という値が必要です。XSL-FO ではそうなっています:
http://www.w3.org/TR/xsl11/#caption-side )

> 'text-align' 

left, right の値は、縦書きでは、left が上で right が下になるのが自然です。
CSS3 Text ドラフトの text-align プロパティの定義では、start, end の値も
追加されていて論理的な指定ができます。また、left, right の値の縦書きのと
きの意味も明記されています。
http://www.w3.org/TR/css3-text/#text-align
http://dev.w3.org/csswg/css3-text/#text-align

> 'clear' 

left, right の値は、縦書きでは、left が上で right が下になるのが自然です。
text-align と同様。
(書字方向相対の start, end の値がほしい)

> 'float' 

CSS2.1 では left, right だけなので、それを縦書きにするならば、left が上
で right が下になるのが自然です。text-align と同様。

CSS3 では float の値に top や bottom も追加されます。それもサポートする
UAでは、縦書きでも上下左右は物理的な上下左右で配置することになるはずです。
(書字方向相対で指定をできるようにするためには、before, after, start,
end という値が必要です。)

> 'font' 
> 'line-height' 

line-height は、height の語が使われていますが横書きでの行の高さは縦書き
では当然行の幅ということになります。日本語組版でいう「行幅」が縦書きでも
横書きでも共通に使われるのと同様に、line-height を書字方向によらず共通に
使うことに問題はありません。
(CSS3 の column-width なども同様に、-height や -width が名前についてい
ても論理的でありえます)

> 'height' 
> 'width' 
> 'max-height' 
> 'max-width' 
> 'min-height' 
> 'min-width' 

これらは、物理的な垂直方向の高さ、水平方向の幅です。
(書字方向相対バージョンとして、logical-height, logical-width などを提案
してます。ちなみに XSL-FO ではそれが block-progression-dimension,
inline-progression-dimension という名前です。
http://www.w3.org/TR/xsl11/#block-progression-dimension )

> 'page-break-after' 
> 'page-break-before' 

left, right の値は改ページして左ページまで進めるか右ページまで進めるかを
指定するものです。改丁して奇数ページにする場合、左横書きでは right、右縦
書きでは left を指定することになります。
(left, right の値に代わって even-page, odd-page という論理的な値がほしい)

> 'vertical-align' 

vertical-align は名前は vertical とついてますが、縦書きでは水平方向を指
定することになるはずです。
実際、CSS3 Line ドラフトでは、そのように vertical-align が定義されていま
す(より論理的なベースライン位置指定のプロパティに展開するショートハンド
とされている):
http://dev.w3.org/csswg/css3-linebox/#vertical-align-prop

> 'outline-width' 
> 'outline' 

無関係。要素の周りを囲むものですが、四辺を別々に指定することはできません。
outline-width の width は線幅という意味であり、水平方向は意味してません。


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

Received on Monday, 21 June 2010 19:48:50 UTC