colgroup

colgroup

colgroup 要素型 (HTML, XHTML 1)

[1] HTMLcolgroup 要素は、列群を明示します。

[8] 仕様書:

[2]

開始タグ
必須
終了タグ
省略可能 (HTML 4), 必須 (XHTML 1)
内容模型
(col*)
出現できる文脈
table 直下 ((caption?, (colgroup | col)*, thead?, tfoot?, tbody+))
属性
属性名属性値既定値説明出典
align揃え[HTML4] %cellhalign
bgcolor%Color背景色
char揃える文字[HTML4] %cellhalign
charoff揃える文字[HTML4] %cellhalign
class[HTML4] %coreattr
dir書字方向[HTML4] %i18n
id一意識別子[HTML4] %coreattr
lang自然言語[HTML4] %i18n
xml:lang自然言語[XHTML1]
onclick[HTML4] %events
ondblclick[HTML4] %events
onkeydown[HTML4] %events
onkeypress[HTML4] %events
onkeyup[HTML4] %events
onmousedown[HTML4] %events
onmousemove[HTML4] %events
onmouseout[HTML4] %events
onmouseover[HTML4] %events
onmouseup[HTML4] %events
spanNUMBER1行数[HTML4]
styleスタイル情報[HTML4] %coreattr
title注釈的題[HTML4] %coreattr
valign垂直配置[HTML4] %cellvalign
width%MultiLength;行幅[HTML4]

[9] HTML 4 DTD の注釈 (参考) には COLGROUP groups a set of COL elements. It allows you to group several semantically related columns together. と説明があります。 (名無しさん [sage])

列の数

[3] colgroup で表される列群に含まれる列の数は、

  1. 子供 col 要素があれば、その span 属性 (既定値 1) の値の合計数
  2. なければ、 span 属性 (既定値 1) の値

で決まります。

[4] 40行含む列群の例:

   <COLGROUP span="40" width="20">
   </COLGROUP>

(HTML 4 より)

span を使った指定は、特に列数が多い時には便利ですが、 列に例えば id を与えておきたい場合には col を使った方法にしないといけません。

   <COLGROUP width="20">
      <COL span="39">
      <COL id="format-me-specially">
   </COLGROUP>

(HTML 4 より)

この例では width 属性の値が子 col 要素に継承されます。

[6] 表全体の列の数は、次のように決められます。 (仕様書: HTML 4 <IW:HTML4:"struct/tables.html#column-calc">)

table が子供として colgroupcol を持つ場合、 UA が採るべき (should) 計算法: 子 colgroup>>3 の方法、 子 colspan 属性 (既定値 1) によって値を得、 すべて合計したものが表全体の列数。

colgroupcol が無い場合に UA が採るべき (should) 計算法: 表の全のうち、一番こま数 (colspan 属性を考慮に入れたもの。) が多いもののこま数が表全体の列数。

(こま数が列数に足りない行には空こまが補充されるべき (should) です。 HTML 4 仕様書ではこの説明は後者の計算法の場合に書かれていますが、前者で計算した場合も適用されるはずです。)

二つの計算法の値が一致しない時は誤りです。

[5]

<TABLE>
<COLGROUP span="10" width="50">
<COLGROUP span="5" width="0*">
<THEAD>
<TR><TD> ...
</TABLE>

(HTML 4 仕様書より)

メモ

[7] colgroupcol の目的は表の構造を示すことのほかに、 表の列数や幅などの属性を事前に知らしめておくことによって徐々にレンダリングするなど処理を高速化することもあります。 (ただし、それは90年代後半の話であって、 現在の回線や計算機の処理速度ではほとんど意味を成さないでしょう。)

(名無しさん)

[10] Bug 915 - implement inheritance of alignment attributes from columns (align, valign, char, charoff, (lang, dir)?) <https://bugzilla.mozilla.org/show_bug.cgi?id=915> (名無しさん)

[11] colgroup / col 要素を活用してみる | WWW WATCH ( 版) <http://hyper-text.org/archives/2007/05/colgroup_and_col_element.shtml> (名無しさん 2007-05-27 03:10:56 +00:00)

メモ

[12] Allow <script> inside <hgroup> by annevk · Pull Request #3383 · whatwg/html () <https://github.com/whatwg/html/pull/3383>