MultiLength

1. 基本情報

説明 ピクセル値、百分率あるいは余剰空白分配指定による長さ
語源 MULTIple LENGTHs
根源型 CDATA
使用属性 width (colgroup, col)

2. 解説

2-1. 概要

MultiLengthデータタイプは、ピクセル値、百分率あるいは余剰空白分配指定で、占めるべき長さを表します。Lengthデータタイプと大体同じです。

2-2. 形式

2-2-1. ピクセル値

[プログラムコード開始]

pixels

[プログラムコード終了]

Pixelsデータタイプと同じです。使用可能な領域の内、pixelsピクセルを指定します。pixelsには整数値のみが指定可能です。

2-2-2. 百分率

[プログラムコード開始]

percentage%

[プログラムコード終了]

使用可能な領域のpercentage%を指定します。percentageには整数値のみが指定可能です。

2-2-3. 余剰空白分配指定

MultiLengthデータタイプがLengthデータタイプと違う所です。名前が野暮ったいですが、relative lengthの直訳(相対的長さ)では誤解が生まれそうなので、こう呼ぶ事にします。

これは他と少々毛色が違い、余剰空白に対する相対指定です。余剰空白と言うのも造語ですが、これは、使用可能な領域の内、ピクセル値百分率によって占められた後に残る領域を指します。書式は次の通りです。

[プログラムコード開始]

proportion*

[プログラムコード終了]

余剰空白の内、proportionに相当する領域を占めます。proportionには整数値のみが指定可能です。proportionが省略された*の場合、1*と等価になります。

例えば、余剰空白として90ピクセルが残った時、2*、3*、4*をwidth属性に指定したcol要素が3つあったとします。この場合、それぞれ20ピクセル、30ピクセル、40ピクセルが割り当てられる事になります。

この事を踏まえて、次の例で各列がそれぞれ何ピクセル割り当てられるか考えてみて下さい。

[プログラムコード開始]

<table width="1000">
<caption>説明の便宜上、幅をwidth属性で与えられたテーブル</caption>
<col width="2*"/>
<col width="11%"/>
<col width="90"/>
<col width="*"/>
<col width="3*"/>
<col width="14%"/>
<col width="5*"/>
<!-- 行とセルの羅列 -->
</table>

[プログラムコード終了]

答えは、1列目から順に、120、110、90、60、180、140、300ピクセルです。まずピクセル値と百分率が領域を占めるので、2、3、6列目の110、90、140ピクセルはすぐに決まります。残りは余剰空白分配指定の列だけになるので、余剰空白は660ピクセルと決まります。1、4、5、7列目は2:1:3:5の比で余剰空白を分配すれば良いので、それぞれ120、60、180、300ピクセルとなります。

なお、0*は余剰空白分配指定の形式をしていますが、余剰空白の計算よりも先に必要最低限の列幅を確保します。

[MultiLength]
Published : 2007-02-10T09:00:00+09:00
Last Modified : 2007-02-10T09:00:00+09:00
Table of Contents : データタイプ目次
Index : データタイプ索引
Verified with : Valid XHTML 1.1
Copyright © 2007  E+X.