列グループ化要素

since: 31st/Aug./2001; last modified: 16th/Sep./2001

テーブルは一般に、複数の列からなります。一行ごとに tr 要素の内容として表現しますが、複数の列を一つのまとまりとして扱いたいことがあります。このようなとき、 col, colgroup 要素を用います。

これらの要素を用いるときは、 caption 要素の次、tr 要素thead, tfoot, tbody 要素よりも前に記述しなければなりません。また、 col 要素か colgroup 要素の何れか一方しか許されず、何れの場合も任意の回数表れ得ます。

col 要素は複数の列に共通した属性を指定したい場合に用います。 colgroup 要素は複数の列の構造的なグループ分けに使います。 colgroup 要素を用いて意味的な構造化をする場合は、 col 要素はその内容にしか現れません。 tr 要素と thead, tfoot, tbody 要素との関係に似ています。

属性

span = Number
width = MultiLength

他に、 colgroup, col 要素に定義されている属性は、共通属性集合の Common の他、セル内容の配置指定である align, valign 属性です。

これらの属性を用いると、当該グループ内の全ての th, td 要素で当該属性を指定したのと等価です。この属性値は、個別の要素ごとの定義に上書きされます。

サンプル

次の例では、列グループには 40 個の列が含まれ、全ての列幅は 20 ピクセルに指定されている。かつ、 40 列目は id 属性が与えられている。

<table>
  <caption>サンプル</caption>
   <colgroup width="20">
      <col span="39">
      <col id="format-me-specially">
   </colgroup>
  <thead>
  <tr><td> …
</table>

次の例は、六つの列を含むテーブルの例です:

<table>
<colgroup>
   <col width="30">
</colgoup>
<colgroup>
   <col width="30">
   <col width="0*">
   <col width="2*">
</colgoup>
<colgroup align="center">
   <col width="1*">
   <col width="3*" align="char" char=":">
</colgoup>
<thead>
<tr><td> …
…行…
</table>

上の例では、第一列幅は 30 ピクセル、第二列幅は 30 ピクセル、第三列幅は最小幅。残りの列は相対指定で、順に残りの表示可能幅の、 1/3, 1/6, 1/2 が配分されます。

最後のグループに含まれる二つの列は、文字列配置が align="center" に指定されています。当該グループに含まれる全てのセル内容は中央寄せに指定されたことになります。しかし、最後の六列目は、当該列内のセルデータを、 ":" で揃えるように上書き指定されています。これらの指定は、セル要素での個別の属性指定によって上書きされます。


Copyright © 2001, SUGAI, Manabu. All rights reserved. 著作権は放棄していません。
SEO [PR] !uO z[y[WJ Cu