Template:Navbox
This template employs intricate features of template syntax.
You are encouraged to familiarise yourself with its setup and parser functions before editing the template. If your edit causes unexpected problems, please undo it quickly, as this template may appear on a large number of pages. You can conduct experiments, and should test all major changes, in either this template's sandbox, the general template sandbox, or your user space before changing anything here. |
This template allows a navigational template to be set up relatively quickly by supplying it one or more lists of links. It is similar to {{Navbox generic}} in appearance, with some default styles that should work for most navigational templates. It is not recommended that one modifies the default styles but it is possible if one wishes to do so.
Usage
Please remove the parameters that are left blank.
{{Navbox |name = {{subst:PAGENAME}} |state = |title = |image = |above = |group1 = |list1 = |group2 = |list2 = ... |group20 = |list20 = |below = }}
Parameter list
|
The navbox uses lowercase parameter names, as shown in the box (at right). The mandatory name and title will create a one-line box if other parameters are omitted.
Images and groups have restrictions explained below under Parameter descriptions, where another parameter ("imageleft" ) can replace all group-cells.
Notice "group1" (etc.) is optional, as are sections named "above/below".
The concise list of parameters is as follows:
name -
the name of the template.title -
text in the title bar, such as: [[Widget stuff]].state - autocollapse, show, collapsed
, orplain
(the status of box expansion,- where "autocollapse" hides stacked navboxes; "plain" removes the "[hide]" button).
titlestyle -
a CSS style for the title-bar, such as:background:gray;
groupstyle -
a CSS style for the group-cells, such as:background:lightgray;
image -
an optional right-side image (coded as the whole image tag: [[Image:XX.jpg|90px]] ).imageleft -
an optional left-side image, replacing group-cells (coded as the whole image tag).
above -
text to appear above the group/list section (could be a list of overall wikilinks).
groupn -
the left-side text before list-n (if group-n omitted, list-n starts at left of box).listn -
text listing wikilinks, often separated by middot templates, such as: [[A]]{{·}}
[[B]]below -
optional text to appear below the group/list section.navbar -
title-bar nav link (default:Tnavbar
for v • d • e links; "navbar=plain" will omit, but should only be used when absolutely necessary).
Further details, and complex restrictions, are explained below under section Parameter descriptions. See some alternate navbox formats under: Layout of table.
Parameter descriptions
Mandatory
- name
- The name of the template, which is needed for the "v · d · e" ("view · discuss · edit") links to work properly on all pages where the template is used. You can enter
{{subst:PAGENAME}}
for this value as a shortcut.
- title
- Text that appears centered in the top row of the table. It is usually the template's topic, i.e. a succinct description of the body contents. This should be a single line, but if a second line is needed, use
{{-}}
to ensure proper centering.
- listn (body may be used in place of list1)
- (i.e. list1, list2, etc.) The body of the template, usually a list of links. Format is inline, although the text can be entered on separate lines if the entire list is enclosed within
<div> </div>
. At least one list parameter is required; each additional list is displayed in a separate row of the table. Each listn may be preceded by a corresponding groupn parameter, if provided (see below).
- (i.e. list1, list2, etc.) The body of the template, usually a list of links. Format is inline, although the text can be entered on separate lines if the entire list is enclosed within
Optional
Cells
- groupn
- (i.e. group1, group2, etc.) If specified, text appears in a header cell displayed to the left of listn. If omitted, listn uses the full width of the table.
- image
- An image to be displayed in a cell below the title and to the right of the body (the groups/lists). For the image to display properly, the list1 parameter must be specified. The image parameter accepts standard wikicode for displaying an image, i.e.
[[Image:Example.jpg|100px]]
- imageleft
- An image to be displayed in a cell below the title and to the left of the body (lists). For the image to display properly, the list1 parameter must be specified and no groups can be specified. The imageleft parameter accepts standard wikicode for displaying an image, i.e.
[[Image:Example.jpg|100px]]
- above
- A full-width cell displayed between the titlebar and first group/list, i.e. above the template's body (groups, lists and image). In a template without an image, above behaves in the same way as the list1 parameter without the group1 parameter.
- below
- A full-width cell displayed below the template's body (groups, lists and image). In a template without an image, below behaves in the same way as the template's final listn parameter without a groupn parameter. For an example of the below parameter in use, see {{Lists of the provinces and territories of Canada}}.
Styles
Styles are generally not recommended as to maintain consistency among templates and pages in Wikipedia. However, the option to modify styles is given.
- titlestyle
- CSS styles to apply to title, most often the titlebar's background color:
titlestyle = background:#nnnnnn;
titlestyle = background:name;
- bodystyle
- Specifies CSS styles to apply to the template body. The shorter name style may be used when no other style parameters are specified. This option should be used sparingly as it can lead to visual inconsistencies. Examples:
background:#nnnnnn;
width:N [em/%/px or width:auto];
float:[left/right/none];
clear:[right/left/both/none];
- groupstyle
- CSS styles to apply to the groupN cells. This option overrides any styles that are applied to the entire table. Examples:
background:#nnnnnn;
text-align:[left/center/right];
vertical-align:[top/middle/bottom];
- liststyle
- CSS styles to apply to all lists. Overruled by the oddstyle and evenstyle parameters (if specified) below.
- oddstyle
- evenstyle
- Applies to odd/even list numbers. Overrules styles defined by liststyle. The default behavior is to add striped colors (white and gray) to odd/even rows, respectively, in order to improve readability. These should not be changed except in extraordinary circumstances.
- abovestyle
- belowstyle
- CSS styles to apply to the top cell (specified via the above parameter) and bottom cell (specified via the below parameter). Typically used to set background color or text alignment:
background:#nnnnnn;
text-align:[left/center/right];
Default styles
The style settings listed here are those that editors using the navbox change most often. The other more complex style settings were left out of this list to keep it simple.
titlestyle = background:#ccccff;
bodystyle = background:white; width:100%; vertical-align:middle;
abovestyle = background:#ddddff; text-align:center;
belowstyle = background:#ddddff; text-align:center;
groupstyle = background:#ddddff; text-align:right;
liststyle = background:transparent; text-align:left/center;
oddstyle = background:transparent;
evenstyle = background:#f7f7f7;
Since liststyle and oddstyle are transparent odd lists have the color of the bodystyle, which defaults to white. A list has text-align:left;
if it has a group, if not it has text-align:center;
. Since only bodystyle has a vertical-align all the others inherit its vertical-align:middle;
.
Other
- state
autocollapse, show, collapsed
orplain
- Defaults to
autocollapse
. A navbox withautocollapse
will start out collapsed if there are two or more tables on the same page that use other collapsible tables. Otherwise, the navbox will be expanded. For the technically minded, see MediaWiki:Common.js. - If set to
collapsed
, the navbox will always start out in a collapsed state. - If set to
plain
, the navbox will always be expanded with no [hide] link on the right. - If set to blank or anything other than
autocollapse
,collapsed
orplain
(such as "show"), the navbox will always start out in an expanded state, but have the "hide" button.
- Defaults to
- To show the box when standalone (non-included) but then auto-hide contents when in an article, put "show" inside <noinclude> tags:
state =
<noinclude>show</noinclude><includeonly>autocollapse</includeonly>- That double setting will force the box visible when standalone (even when followed by other boxes), displaying "[hide]" but then auto-collapse the box when stacked inside an article.
- Often times, editors will want a default initial state for a nav box, which may be overridden in an article. Here is the trick to do this:
- In your intermediate template, create a parameter also named "state" as a pass-through like this:
- | state = {{{state<includeonly>|your_desired_initial_state</includeonly>}}}
- Example: {{peso}} with autocollapse as the default initial state. Bolivian peso transcludes it and has only one nav box. So the peso nav box shows. Chilean peso has two nav boxes. So the peso nav box collapses.
- Example: {{Historical currencies of Hungary}} with expanded as the default initial state. All transcluding articles shows the content by default, unless there were an hypothetical article that specifies state = collapsed when transcluding.
- The <includeonly>| will make the template expanded when viewing the template page by itself.
- navbar
- Defaults to
Tnavbar
. If set toplain
, the v • d • e links on the left side of the titlebar will not be displayed. Currently, however, the title will also no longer be centered. See #Title centering below for a workaround.
Layout of table
Table generated by {{Navbox}} without image, above and below parameters (borders added for illustration only):
{{{title}}} | |
---|---|
{{{group1}}} | {{{list1}}} |
{{{group2}}} | {{{list2}}} |
{{{list3}}} without {{{group3}}} | |
{{{group4}}} | {{{list4}}} |
Table generated by {{Navbox}} with image, above and below parameters (borders added for illustration only):
{{{title}}} | ||
---|---|---|
{{{above}}} | ||
{{{group1}}} | {{{list1}}} | {{{image}}} |
{{{group2}}} | {{{list2}}} | |
{{{list3}}} without {{{group3}}} | ||
{{{group4}}} | {{{list4}}} | |
{{{below}}} |
Table generated by {{Navbox}} with image, imageleft, lists, and without groups, above, below:
{{{title}}} | ||
---|---|---|
{{{imageleft}}} | {{{list1}}} | {{{image}}} |
{{{list2}}} | ||
{{{list3}}} | ||
{{{list4}}} |
Title centering
If the either the navbar (the v • d • e links) or the [show]/[hide] are disabled, then the title is not centered:
1234567890123456789012345678901234567890 |
---|
Normal navbox |
1234567890123456789012345678901234567890 |
---|
No [show]/[hide] link |
1234567890123456789012345678901234567890 |
---|
No navbar |
This can be resolved by padding the title with {{pad|5.5em}} on the right or left:
1234567890123456789012345678901234567890 |
---|
Padded right |
1234567890123456789012345678901234567890 |
---|
Padded left |
Note that omitting both the [show]/[hide] link and the navbar has no effect on the title centering, as follows:
1234567890123456789012345678901234567890 |
---|
Normal navbox |
1234567890123456789012345678901234567890 |
---|
No [show]/[hide] link or navbar |
Examples
No image
{{Navbox |name = Navbox/doc |title = [[Multimedia Super Corridor|MSC (Multimedia Super Corridor) Malaysia]]{{-}}''without image'' |group1 = Centre |list1 = [[Cyberjaya]] |group2 = Area |list2 = [[Klang Valley]] |group3 = Major landmarks |list3 = [[Petronas Twin Towers]]{{·}} [[Kuala Lumpur Tower]]{{·}} [[Kuala Lumpur Sentral]]{{·}} [[Technology Park Malaysia]]{{·}} [[Putrajaya]]{{·}} [[Cyberjaya]]{{·}} [[Kuala Lumpur International Airport]] |group4 = Infrastructure |list4 = [[Express Rail Link]]{{·}} [[KL-KLIA Dedicated Expressway]] |group5 = Prime applications |list5 = [[EGovernment]]{{·}} [[MyKad]] }}
MSC (Multimedia Super Corridor) Malaysia without image | |
---|---|
Centre | Cyberjaya |
Area | Klang Valley |
Major landmarks | Petronas Twin Towers · Kuala Lumpur Tower · Kuala Lumpur Sentral · Technology Park Malaysia · Putrajaya · Cyberjaya · Kuala Lumpur International Airport |
Infrastructure | Express Rail Link · KL-KLIA Dedicated Expressway |
Prime applications | EGovernment · MyKad |
With image, without groups
{{Navbox |name = Navbox/doc |title = [[Multimedia Super Corridor|MSC (Multimedia Super Corridor) Malaysia]] |image = [[Image:Flag of Malaysia.svg|80px]] |list1 = [[Petronas Twin Towers]]{{·}} [[Kuala Lumpur Tower]]{{·}} [[Kuala Lumpur Sentral]]{{·}} [[Technology Park Malaysia]]{{·}} [[Putrajaya]]{{·}} [[Cyberjaya]]{{·}} [[Kuala Lumpur International Airport]] }}
MSC (Multimedia Super Corridor) Malaysia | |
---|---|
Petronas Twin Towers · Kuala Lumpur Tower · Kuala Lumpur Sentral · Technology Park Malaysia · Putrajaya · Cyberjaya · Kuala Lumpur International Airport |
With two images, without groups, multiple lists
{{Navbox |name = Navbox/doc |title = [[Multimedia Super Corridor|MSC (Multimedia Super Corridor) Malaysia]] |image = [[Image:Flag of Malaysia.svg|80px]] |imageleft = [[Image:Flag of Malaysia.svg|80px]] |list1 = [[Petronas Twin Towers]]{{·}} [[Kuala Lumpur Tower]]{{·}} [[Kuala Lumpur Sentral]] |list2 = [[Express Rail Link]]{{·}} [[KL-KLIA Dedicated Expressway]] |list3 = [[EGovernment]]{{·}} [[MyKad]] |list4 = [[Klang Valley]] }}
MSC (Multimedia Super Corridor) Malaysia | ||
---|---|---|
Petronas Twin Towers · Kuala Lumpur Tower · Kuala Lumpur Sentral | ||
Express Rail Link · KL-KLIA Dedicated Expressway | ||
EGovernment · MyKad | ||
Klang Valley |
With image, groups, above, below
{{Navbox |name = Navbox/doc |title = [[Multimedia Super Corridor|MSC (Multimedia Super Corridor) Malaysia]] |image = [[Image:Flag of Malaysia.svg|80px]] |above = Above text goes here |group1 = Centre |list1 = [[Cyberjaya]] |group2 = Area |list2 = [[Klang Valley]] |group3 = Major landmarks |list3 = [[Petronas Twin Towers]]{{·}} [[Kuala Lumpur Tower]]{{·}} [[Kuala Lumpur Sentral]]{{·}} [[Technology Park Malaysia]]{{·}} [[Putrajaya]]{{·}} [[Cyberjaya]]{{·}} [[Kuala Lumpur International Airport]] |group4 = Infrastructure |list4 = [[Express Rail Link]]{{·}} [[KL-KLIA Dedicated Expressway]] |group5 = Prime applications |list5 = [[EGovernment]]{{·}} [[MyKad]] |below = Website: [http://www.msc.com.my/ www.msc.com.my] }}
MSC (Multimedia Super Corridor) Malaysia | ||
---|---|---|
Above text goes here | ||
Centre | Cyberjaya | |
Area | Klang Valley | |
Major landmarks | Petronas Twin Towers · Kuala Lumpur Tower · Kuala Lumpur Sentral · Technology Park Malaysia · Putrajaya · Cyberjaya · Kuala Lumpur International Airport | |
Infrastructure | Express Rail Link · KL-KLIA Dedicated Expressway | |
Prime applications | EGovernment · MyKad | |
Website: www.msc.com.my |
Technical details
Internally this meta template uses HTML markup instead of wiki markup for the table code. That is the usual way we make meta templates since wiki markup has several drawbacks. For instance it makes it harder to use parser functions and special characters in parameters.
Parser functions are used for calculations.
For more technical details see the talk page, the CSS classes in MediaWiki:common.css and the collapsible table used to hide the box in MediaWiki:common.js
See also
- {{Navbox generic subgroup}} – Allows the creation of subgroups within {{Navbox}}.
- {{Navbox group}} – Allows groups past 20 in {{Navbox}} and 12 in {{Navbox generic subgroup}}.
- {{Navigation with collapsible groups}} – Another variation.
- {{·}} and {{•}} – The dot and bullet commonly used to separate items in Navbox lists.
- Wikipedia:Line break handling – The how-to guide about how to handle word wraps (line breaks) on Wikipedia, such as the wrapping of the link lists used in navboxes.
- {{Nobold}} – To display text at normal font-weight within a context where the default font-weight is bold, e.g. header cells in tables.
collapsible | Header color† | Image | Groups | Style (body) parameter/s |
Example | |
---|---|---|---|---|---|---|
{{Navigation}} | NavFrame | NavHead | No | No | Yes | {{OPEC}} |
{{Navigation with image}} | NavFrame | NavHead | Left/right of body | No | Yes | {{HolmesNovels}} |
{{Navigation with columns}} | NavFrame | NavHead | No | No | Yes | |
{{Dynamic navigation box}} | collapsible | navbox | No | No | Yes | {{CSUHeads}} |
{{Dynamic navigation box with image}} | NavFrame | NavHead | Upper left | No | No | {{SlovakPMs}} |
{{Navbox generic}} | collapsible | navbox | Right-hand side | Yes | Yes | {{Dilbert}} |
{{NavigationBox}} | No | navbox | Right of title+body | No | No | {{EPA}} |
{{Commons:NavigationBox}} | No | #ccccff | Right of title+body | No | No | |
{{Commons:Dynamic navigation box}} | NavFrame | #ccccff | No | No | No | |
{{Commons:Dynamic navigation box with image}} | NavFrame | #ccccff | Upper left | No | No | |
† The background color for the header or title is inherited from the class listed below. The templates have titlestyle parameters that can be used to override the default. |
Type | CSS classes | Collapses when | Custom initial state |
Nesting | Header color |
Font size |
---|---|---|---|---|---|---|
NavFrame div | NavFrame, NavHead, NavContent | 3+ of the same | No | Yes | #ccccff | 95% |
Collapsible table | collapsible, navbox | 2+ of the same | Yes | Yes | #ccccff | 90% |
For the technically minded, see Common.css and Common.js. |