<col>
The <col>
HTML element defines a column within a table and is used for defining common semantics on all common cells. It is generally found within a <colgroup>
element.
<col>
allows styling columns using CSS, but only a few properties will have an effect on the column (see the CSS 2.1 specification for a list).
Content categories | None. |
---|---|
Permitted content | None, it is an empty element. |
Tag omission | It must have start tag, but must not have an end tag. |
Permitted parents | <colgroup> only, though it can be implicitly defined as its start tag is not mandatory. The <colgroup> must not have a span attribute. |
Implicit ARIA role | No corresponding role |
Permitted ARIA roles | No role permitted |
DOM interface | HTMLTableColElement |
Attributes
This element includes the global attributes.
span
-
This attribute contains a positive integer indicating the number of consecutive columns the
<col>
element spans. If not present, its default value is1
.
Deprecated attributes
The following attributes are deprecated and should not be used. They are documented below for reference when updating existing code and for historical interest only.
-
align
-
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 cell -
center
, centering the content in the cell -
right
, aligning the content to the right of the cell -
justify
, inserting spaces into the textual content so that the content is justified in the cell
If this attribute is not set, its value is inherited from the
align
of the<colgroup>
element this<col>
element belongs too. If there are none, theleft
value is assumed.Note: To achieve the same effect as the
left
,center
,right
orjustify
values, do not try to set thetext-align
property on a selector giving a<col>
element. Because<td>
elements are not descendant of the<col>
element, they won't inherit it.If the table doesn't use a
colspan
attribute, use thetd:nth-child(an+b)
CSS selector. Seta
to zero andb
to the position of the column in the table, e.g.td:nth-child(2) { text-align: right; }
to right-align the second column.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. -
-
bgcolor
-
The background color of the table. It is a 6-digit hexadecimal RGB code, prefixed by a '
#
'. One of the predefined color kewords can also be used.To achieve a similar effect, use the CSS
background-color
property. -
char
-
This attribute is used to set the character to align the cells in a column on. 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. -
charoff
-
This attribute is used to indicate the number of characters to offset the column data from the alignment characters specified by the
char
attribute. -
valign
-
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 try to set the
vertical-align
property on a selector giving a<col>
element. Because<td>
elements are not descendant of the<col>
element, they won't inherit it.If the table doesn't use a
colspan
attribute, use thetd:nth-child(an+b)
CSS selector 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
-
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 as5*
also can be used.
Examples
Please see the <table>
page for examples on <col>
.
Specifications
Specification |
---|
HTML Standard (HTML) # the-col-element |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
col |
1 |
12 |
1 |
Yes |
Yes |
Yes |
Yes |
Yes |
4 |
Yes |
Yes |
Yes |
align |
? |
12 |
No
See bug 915.
|
Yes |
? |
? |
? |
? |
No
See bug 915.
|
? |
? |
? |
bgcolor |
? |
? |
No |
Yes |
? |
? |
? |
? |
No |
? |
? |
? |
char |
? |
12 |
No
See bug 2212.
|
Yes |
? |
? |
? |
? |
No
See bug 2212.
|
? |
? |
? |
charoff |
? |
12 |
No
See bug 2212.
|
Yes |
? |
? |
? |
? |
No
See bug 2212.
|
? |
? |
? |
span |
1 |
12 |
1 |
Yes |
Yes |
Yes |
Yes |
Yes |
4 |
Yes |
Yes |
Yes |
valign |
? |
12 |
No
See bug 915.
|
Yes |
? |
? |
? |
? |
No
See bug 915.
|
? |
? |
? |
width |
1 |
12 |
1 |
Yes |
Yes |
Yes |
Yes |
Yes |
4 |
Yes |
Yes |
Yes |
See also
- 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
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col