Template:Div col/doc
This is a documentation subpage for Template:Div col. It contains usage information, categories and other content that is not part of the original template page. |
Columns are not supported by some older browsers, most notably Internet Explorer 9 and below and Opera 11.0 and below. See this page for more information. |
Property | Internet Explorer |
Firefox | Safari | Chrome | Opera |
---|---|---|---|---|---|
column-width column-count |
≥ 10 (2012) |
≥ 1.5 (2005) |
≥ 3 (2007) |
≥ 1 (2008) |
≥ 11.1 (2011) |
columns | ≥ 10 (2012) |
≥ 9 (2011) |
≥ 3 (2007) |
≥ 1 (2008) |
≥ 11.1 (2011) |
break-before break-after break-inside |
≥ 10 (2012) |
≥ 65 (2019) |
≥ 10 (2016) |
≥ 65 (2016) |
≥ 15 (2013) |
{{Div col}} is used to make a list into columns. It automatically breaks each column into an equal space, meaning, for instance, it is not necessary to work out the halfway point between two columns. The list content is either provided by the |content=
parameter (which can be restrictive of what content is allowed; e.g., wiki markup like | must somehow be escaped) or terminated with {{div col end}}. The template also offers parameter options to set a smaller (90%) font-size parameter (|small=yes
), place vertical lines parameter ("rules") between the columns (|rules=
) and to add other custom styling parameter (|style=
).
{{Div col}} can create multiple columns in web browsers which support one of the following CSS properties:
- column-count (for CSS3-compliant browsers; see CSS3 module: Multi-column layout)
- -moz-column-count (for Mozilla/Gecko-based browsers such as Firefox)
- -webkit-column-count (for WebKit-based browsers such as Safari and Google Chrome)
Usage
There are six parameters for this template and their usage is described below.
Page Template:Nobold/styles.css has no content.or first unnamed parameter|cols=
- (Now deprecated, as colwidth below is better suited to flexible formatting for a variety of display screen sizes (from mobile phones, tablets, etc to widescreen cinema-style displays))
Specifies the number of columns (default 2). |colwidth=
Page Template:Nobold/styles.css has no content.or second unnamed parameter- Specifies the minimum width of the columns and determines automatically the number of columns based on screen width (i.e. more columns will be shown on wider displays). Overrides cols. Specified in any CSS unit, for instance in em, about the width of a capital "M", e.g,
colwidth=20em
|rules=
- Adds vertical lines ("rules") between the columns if set to
yes
or some CSS styling (e.g.1px dashed blue;
). |gap=
- Specifies the space between the content of adjacent columns. Specified in any CSS unit, e.g,
gap=2em
. The default spacing (set by browser) is 1em. |style=
- CSS styling to apply to the columns.
|content=
- content to apply to the columns.
Examples
Usage without parameters
Example with no parameters produces two columns as the default is two columns.
{{Div col}} * a * b * c * d * e * f * g * h {{Div col end}}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
Usage with named parameters
When parameters are named in the template, they can be used in any order.
- Example
{{Div col|colwidth=10em|rules=yes|gap=2em|small=yes}} * a * b * c * d * e * f * g * h {{Div col end}}
or
{{Div col|rules=yes|gap=2em|small=yes|colwidth=10em}} * a * b * c * d * e * f * g * h {{Div col end}}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
and exactly the same result below
- a
- b
- c
- d
- e
- f
- g
- h
Usage of parameters without naming the parameters
When parameters are not named then template considers first unnamed parameter to be "col", second unnamed parameter to be "colwidth", remaining unnamed parameters (e.g. third, fourth, fifth, etc unnamed parameter) will be ignored by the template without providing an error message. The first and second parameter "col" and "colwidth" could be unnamed but all other parameters (such as "rules", "gap", "style" and "small") must always be named in the template.
- Example with correct usage of unnamed parameters
Note the empty column for the "number of columns" between "Div col" and "10em".
{{div col||10em|rules=yes|gap=2em|small=yes}} * a * b * c * d * e * f * g * h {{div col end}}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
- Example with incorrect usage of unnamed parameters
Note that the unnamed third, fourth and fifth parameters will be ignored by the template. If used, then third, fourth and fifth parameters must always be named.
{{div col||10em|yes|2em|yes}} * a * b * c * d * e * f * g * h {{div col end}}
- produces (unnamed third, fourth and fifth parameters are ignored)
- a
- b
- c
- d
- e
- f
- g
- h
Usage of "col" parameter
Important tip: Use of now-deprecated "col" parameter is discouraged, leave it blank and instead use the "colwidth" parameter.
- Example with 3 columns
{{Div col|3}} * a * b * c * d * e * f * g * h {{Div col end}}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
- Example with 4 columns
{{Div col|4}} * a * b * c * d * e * f * g * h {{Div col end}}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
Usage of "colwidth" parameter
Important tip: Most wiki reviewers will reject the usage of previous parameter "col" and instead they prefer the use of this "colwidth" parameter i.e. it is strongly recommended to not use now-deprecated "col" parameter (please leave it blank) and instead use "colwidth" parameter.
- Example with column width of 10em
Note the empty column for the "number of columns" between "Div col" and "10em". {{div col||10em}} * a * b * c * d * e * f * g * h {{div col end}}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
- Example with column width of 20em
{{div col||20em}} * a * b * c * d * e * f * g * h {{div col end}}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
- Example with column width of 30em
{{div col||30em}} * a * b * c * d * e * f * g * h {{div col end}}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
- Example of how this template behaves if no bullets (generated by asterisk mark) are used.
{{div col||10em}} a b c d e f g h {{div col end}}
- produces
a b c d e f g h
Usage of "rules" parameter
- Example
{{Div col|rules=yes}} * a * b * c * d * e * f * g * h {{Div col end}}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
Usage of "gap" parameter
- Example
{{Div col|colwidth=10em|rules=yes|gap=2em}} * a * b * c * d * e * f * g * h {{Div col end}}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
Usage of "small" parameter
- Example showing how setting "small" parameter to "yes" produces smaller font size
{{Div col|small=yes}} * a * b * c * d * e * f * g * h {{Div col end}}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
Usage of "content" parameter
- Example showing how to provide "content" parameter without using
{{Div col end}}
{{Div col|colwidth=10em|content= * a * b * c * d * e * f * g * h }}
- produces
- a
- b
- c
- d
- e
- f
- g
- h
TemplateData
TemplateData for Div col
<templatedata> { "description": "Breaks a list into columns. It automatically breaks each column to an equal space, so you do not manually have to find the half way point on two columns. The list is provided by
Redirects
{{Div col start}}
{{Colbegin}}
(but not{{Col begin}}
){{Cols}}
See also
- Column-generating template families
The templates listed here are not interchangeable. For example, using {{col-float}} with {{col-end}} instead of {{col-float-end}} would leave a HTML "div" (division) open, potentially harming any subsequent formatting. |
Family | Type | Handles wiki
table code? |
Start template | Column divider | End template |
---|---|---|---|---|---|
"Col" | Table | Yes | {{Col-begin}} or {{Col-begin-small}} |
{{Col-break}} {{Col-2}} .. {{Col-5}} |
{{Col-end}} |
"Columns" | Table | No | {{Columns}} | – | – |
"Col-float" | CSS float | Yes | {{Col-float}} | {{Col-float-break}} | {{Col-float-end}} |
"Columns-start" | CSS float | Yes | {{Columns-start}} | {{Column}} | {{Columns-end}} |
"Div col" | CSS columns | Yes | {{Div col}} – {{Columns-list}} (wrapper) |
{{No col break}} | {{Div col end}} |
I.e., can the columns handle the wiki markup {| | || |- |} used to create tables? If not, templates that produce these elements (such as {{(!}}, {{!}}, {{!!}}, {{!-}}, {{!)}}) and/or HTML tags (<table>...</table>
, <tr>...</tr>
, etc.) will need to be used instead.