You’re reading the English version of this content since no translation exists yet for this locale. Help us translate this article!
The HTML <colgroup>
element defines a group of columns within a table.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Content categories | None. |
---|---|
Permitted content | If the span attribute is present: none, it is an empty element.If the attribute is not present: zero or more <col> element |
Tag omission | The start tag may be omitted, if it has a <col> element as its first child and if it is not preceded by a <colgroup> whose end tag has been omitted.The end tag may be omitted, if it is not followed by a space or a comment. |
Permitted parents | A <table> element. The <colgroup> must appear after any optional <caption> element but before any <thead> , <th> , <tbody> , <tfoot> and <tr> element. |
Permitted ARIA roles | None |
DOM interface | HTMLTableColElement |
Attributes
This element's attributes include the global attributes.
align
Deprecated since HTML4.01, Obsolete since HTML5- This enumerated attribute specifies how horizontal alignment of each column cell content will be handled. Possible values are:
left
, aligning the content to the left of the cellcenter
, centering the content in the cellright
, aligning the content to the right of the celljustify
, inserting spaces into the textual content so that the content is justified in the cellchar
, aligning the textual content on a special character with a minimal offset, defined by thechar
andcharoff
attributes Unimplemented (see bug 2212).
If this attribute is not set, the
left
value is assumed. The descendant<col>
elements may override this value using their ownalign
attribute.Note: Do not use this attribute as it is obsolete (not supported) in the latest standard.- To achieve the same effect as the
left
,center
,right
orjustify
values:- Do not try to set the
text-align
property on a selector giving a<colgroup>
element. Because<td>
elements are not descendant of the<colgroup>
element, they won't inherit it. - If the table doesn't use a
colspan
attribute, use onetd:nth-child(an+b)
CSS selector per column, where a is the total number of the columns in the table and b is the ordinal position of this column in the table. Only after this selector thetext-align
property can be used. - If the table does use a
colspan
attribute, the effect can be achieved by combining adequate CSS attribute selectors like[colspan=n]
, though this is not trivial.
- Do not try to set the
- To achieve the same effect as the
char
value, in CSS3, you can use the value of thechar
as the value of thetext-align
property Unimplemented.
bgcolor
- This attribute defines the background color of each cell of the columns member of the column group. It is one of the 6-digit hexadecimal code as defined in sRGB, prefixed by a '#'. One of the sixteen predefined color strings, as mentioned below, may be used:
black
= "#000000"green
= "#008000"silver
= "#C0C0C0"lime
= "#00FF00"gray
= "#808080"olive
= "#808000"white
= "#FFFFFF"yellow
= "#FFFF00"maroon
= "#800000"navy
= "#000080"red
= "#FF0000"blue
= "#0000FF"purple
= "#800080"teal = "#008080"
fuchsia
= "#FF00FF"aqua
= "#00FFFF"Usage note: Do not use this attribute, as it is non-standard and is only implemented in some versions of Microsoft Internet Explorer; the<colgroup>
elements should be styled using CSS. To give a similar effect to the bgcolor attribute, use the CSS propertybackground-color
on the relevant<td>
elements.
char
Deprecated since HTML4.01, Obsolete since HTML5- This attribute specifies the alignment of the content in a column group to a character. Typical values for this include a period (.) when attempting to align numbers or monetary values. If
align
is not set tochar
, this attribute is ignored, though it will still be used as the default value for thealign
of the<col>
which are members of this column group.Note: Do not use this attribute as it is obsolete (and not supported) in the latest standard. To achieve the same effect as thechar
, in CSS3, you can use the character set using thechar
attribute as the value of thetext-align
property Unimplemented.
charoff
Deprecated since HTML4.01, Obsolete since HTML5- This attribute is used to indicate the number of characters to offset the column data from the alignment character specified by the char attribute.
Note: Do not use this attribute as it is obsolete (and not supported) in the latest standard.
span
- This attribute contains a positive integer indicating the number of consecutive columns the
<colgroup>
element spans. If not present, its default value is1
.Note: This attribute is applied on the attributes of the column group, it has no effect on the CSS styling rules associated with it or, even more, to the cells of the column's members of the group.- The
span
attribute is not permitted if there are one or more<col>
elements within the<colgroup>
.
- The
valign
Deprecated since HTML4.01, Obsolete since HTML5- This attribute specifies the vertical alignment of the text within each cell of the column. Possible values for this attribute are:
baseline
, which will put the text as close to the bottom of the cell as it is possible, but align it on the baseline of the characters instead of the bottom of them. If characters are all of the size, this has the same effect asbottom
.bottom
, which will put the text as close to the bottom of the cell as it is possible;middle
, which will center the text in the cell;- and
top
, which will put the text as close to the top of the cell as it is possible.
Note: Do not use this attribute as it is obsolete (and not supported) in the latest standard:- Do not try to set the
vertical-align
property on a selector giving a<colgroup>
element. Because<td>
elements are not descendant of the<colgroup>
element, they won't inherit it. - If the table doesn't use a
colspan
attribute, use thetd:nth-child(an+b)
CSS selector per column, where a is the total number of the columns in the table and b is the ordinal position of the column in the table. Only after this selector thevertical-align
property can be used. - If the table does use a
colspan
attribute, the effect can be achieved by combining adequate CSS attribute selectors like[colspan=n]
, though this is not trivial.
width
Obsolete since HTML5- This attribute specifies a default width for each column in the current column group. In addition to the standard pixel and percentage values, this attribute might take the special form
0*
, which means that the width of each column in the group should be the minimum width necessary to hold the column's contents. Relative widths such as0.5*
also can be used.
Examples
Please see the <table>
page for examples on <colgroup>
.
Specifications
Specification | Status | Comment |
---|---|---|
HTML Living Standard The definition of '<colgroup>' in that specification. |
Living Standard | |
HTML5 The definition of '<colgroup>' in that specification. |
Recommendation | |
HTML 4.01 Specification The definition of '<colgroup>' in that specification. |
Recommendation |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
colgroup | Chrome Full support 1 | Edge Full support Yes | Firefox Full support 1 | IE Full support Yes | Opera Full support Yes | Safari Full support Yes | WebView Android Full support Yes | Chrome Android Full support Yes | Firefox Android Full support 4 | Opera Android Full support Yes | Safari iOS Full support Yes | Samsung Internet Android Full support Yes |
align | Chrome ? | Edge Full support Yes | Firefox
No support
No
| IE Full support Yes | Opera ? | Safari ? | WebView Android ? | Chrome Android ? | Firefox Android
No support
No
| Opera Android ? | Safari iOS ? | Samsung Internet Android ? |
bgcolor | Chrome ? | Edge No support No | Firefox No support No | IE Full support Yes | Opera ? | Safari ? | WebView Android ? | Chrome Android ? | Firefox Android No support No | Opera Android ? | Safari iOS ? | Samsung Internet Android ? |
char | Chrome ? | Edge Full support Yes | Firefox
No support
No
| IE Full support Yes | Opera ? | Safari ? | WebView Android ? | Chrome Android ? | Firefox Android
No support
No
| Opera Android ? | Safari iOS ? | Samsung Internet Android ? |
charoff | Chrome ? | Edge Full support Yes | Firefox
No support
No
| IE Full support Yes | Opera ? | Safari ? | WebView Android ? | Chrome Android ? | Firefox Android
No support
No
| Opera Android ? | Safari iOS ? | Samsung Internet Android ? |
span | Chrome Full support 1 | Edge Full support Yes | Firefox Full support 1 | IE Full support Yes | Opera Full support Yes | Safari Full support Yes | WebView Android Full support Yes | Chrome Android Full support Yes | Firefox Android Full support 4 | Opera Android Full support Yes | Safari iOS Full support Yes | Samsung Internet Android Full support Yes |
valign | Chrome ? | Edge Full support Yes | Firefox
No support
No
| IE Full support Yes | Opera ? | Safari ? | WebView Android ? | Chrome Android ? | Firefox Android
No support
No
| Opera Android ? | Safari iOS ? | Samsung Internet Android ? |
width | Chrome Full support 1 | Edge Full support Yes | Firefox Full support 1 | IE Full support Yes | Opera Full support Yes | Safari Full support Yes | WebView Android Full support Yes | Chrome Android Full support Yes | Firefox Android Full support 4 | Opera Android Full support Yes | Safari iOS Full support Yes | Samsung Internet Android Full support Yes |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
- Deprecated. Not for use in new websites.
- Deprecated. Not for use in new websites.
- See implementation notes.
- See implementation notes.
See also
- Other table-related HTML Elements:
<caption>
,<col>
,<table>
,<tbody>
,<td>
,<tfoot>
,<th>
,<thead>
,<tr>
; - CSS properties and pseudo-classes that may be specially useful to style the
<col>
element:- the
width
property to control the width of the column; - the
:nth-child
pseudo-class to set the alignment on the cells of the column; - the
text-align
property to align all cells content on the same character, like '.'.
- the