The columns
CSS shorthand property sets the number of columns to use when drawing an element's contents, as well as those columns' widths.
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.
Constituent properties
This property is a shorthand for the following CSS properties:
Syntax
/* Column width */ columns: 18em; /* Column count */ columns: auto; columns: 2; /* Both column width and count */ columns: 2 auto; columns: auto 12em; columns: auto auto; /* Global values */ columns: inherit; columns: initial; columns: unset;
The columns
property may be specified as one or two of the values listed below, in any order.
Values
<'column-width'>
- The ideal column width, defined as a
<length>
or the keywordauto
. The actual width may be wider or narrower to fit the available space. Seecolumn-width
. <'column-count'>
- The ideal number of columns into which the element's content should be flowed, defined as an
<integer>
or the keywordauto
. If neither this value nor the column's width areauto
, it merely indicates the maximum allowable number of columns. Seecolumn-count
.
Formal definition
Initial value | as each of the properties of the shorthand:
|
---|---|
Applies to | Block containers except table wrapper boxes |
Inherited | no |
Computed value | as each of the properties of the shorthand:
|
Animation type | as each of the properties of the shorthand: |
Formal syntax
<'column-width'> | <'column-count'>
Examples
Setting three equal columns
HTML
<p class="content-box"> This is a bunch of text split into three columns using the CSS `columns` property. The text is equally distributed over the columns. </p>
CSS
.content-box { columns: 3 auto; }
Result
Specifications
Specification | Status | Comment |
---|---|---|
CSS Multi-column Layout Module The definition of 'columns' in that specification. |
Working Draft | Initial definition. |
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.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
columns | Chrome
Full support
50
| Edge
Full support
12
| Firefox
Full support
52
| IE Full support 10 | Opera
Full support
11.1
| Safari
Full support
9
| WebView Android
Full support
50
| Chrome Android Full support 50 | Firefox Android
Full support
52
| Opera Android
Full support
11.1
| Safari iOS
Full support
9
| Samsung Internet Android Full support 5.0 |
Legend
- Full support
- Full support
- See implementation notes.
- See implementation notes.
- Requires a vendor prefix or different name for use.
- Requires a vendor prefix or different name for use.