* frameset 要素 cols 属性 (HTML, XHTML 1)

[1] [[HTML]] の [CODE(HTMLe)[[[frameset]]]] 要素の
[DFN[[CODE(HTMLa)[cols]] 属性]]は、
[[枠]]の垂直方向の配置を指定します。

[2] 仕様書:
- [[HTML 4]]
-- [CODE(HTMLa)[cols]] <IW:HTML4:"present/frames.html#adef-cols-FRAMESET">
-- Rows and columns <IW:HTML4:"present/frames.html#h-16.2.1.1">

[[#comment]]

** 属性値

[3] この属性の値は [CODE(SGML)[%[[MultiLengths]]]]
([CODE(SGML)[%[[MultiLength]]]] の読点分離の並び:
例によって読点の前後には[[空白]]が挿入可能) です。
[[SGML]] 的には [CODE(SGML)[[[CDATA]]]] です。

読点で分離されたそれぞれの値が、それぞれの枠の横幅となります。

合計が 100% にならない時には、 UA が調整するべきです。
領域が足りない時は均等に間引き、余る時は均等に割振るべきです。
[SRC[HTML 4 16.2.1.1]]

[4] この属性は省略可能です。
既定値は [CODE(HTML)[100%]] です [SRC[HTML 4 16.2.1]]。
[[DTD]] 上の既定値は [CODE(SGML)[#[[IMPLIED]]]] です。

[[#comment]]

** 他との関係

[7] [CODE(HTMLa)[cols]] と [CODE(HTMLa)[rows]] の併用は、
仕様では陽に認められていますが、実際にはあまり使われません。
そのような分割の仕方自体にあまり需要が無いからでしょう。

[[#comment]]

** 例

[5] 単純な例 [SRC[HTML 4 16.2.1.1]]
[PRE(HTML)[
<FRAMESET cols="1*,250,3*">
...the rest of the definition...
</FRAMESET>
]PRE]

この例では、利用できる領域を高さ 100% の枠3つに分割します。
真ん中の枠の幅は 250 画素で、残りの領域を左に4分の1、
右に4分の3割振ります。

[6] [CODE(HTMLa)[[[rows]]]] と併用した例 [SRC[HTML 4 16.2.1.1]]
[PRE(HTML)[
<FRAMESET rows="30%,70%" cols="33%,34%,33%">
...the rest of the definition...
</FRAMESET>
]PRE]

この例では、6つの枠を作ります。上段は3割、下段は7割の高さとなります。
幅はおおよそ3分割します。

なお、内容には [CODE(HTMLe)[[[frame]]]] を、上段左、上段中央、
上段右、下段左、下段中央、下段右の順に並べます。
