Template:Navbox with columns/doc

undefined is a navigation box that presents its content in columns. Though drawn from, it has some stylistic elements unique to Wikia. It depends upon the presence of Navbox, and several Lua modules — despite the fact that its code doesn't have explicit references to Lua.

One of the biggest differences between this Wikia version and its "evil twin" at Wikipedia is the fact that it assumes the user wants the navbox to be in the collapsed state. Also, it achieves its collapsibility through the use of the collapsible classes inherent to the MediaWiki core. It is therefore not dependent upon any kind of custom javascript files.

However, unlike its Wikipedia equivalent, it is slightly more heavily styled through CSS. Accordingly a sample CSS file can be found here. Most administrators will probably want to immediately make changes to that style, as the colours were chosen to fit the colour palette at tardis.

In addition to this CSS file, and the examples found below, there are also a series of testcases from Wikipedia which show the versatility of this template.

Basic syntax
Only required parameters and colwidth included.



* See Em. Using proportional units means the template should still be displayed correctly across a range of browser font-sizes. If colwidth not specified, a default 10em is used.

Setup parameters

 * name
 * The name of the template. The name of this template, for example, is "Navbox with columns".


 * state
 * Possible values are,  ,  ,  , and the default  .  See Navbox for more information.


 * navbar
 * Possible values are,  , and the default value of blank.  See Navbox for more information.


 * border
 * Possible values are,  , and the default value of blank.  Set to   if you wish to use the navbox inside of another navbox; with this option, the child navbox is borderless and fits snuggly inside of its parent navbox.  The parent navbox may be the list area of Navbox, a columns of another Navbox with columns, or a section of Navbox with collapsible groups.  See Navbox for more information and examples.

Perimeter parameters
i.e. parameters affecting the inclusion/formatting of items around the template's perimeter.


 * title
 * The title of the template, displayed centered in the titlebar at the top of the template.


 * above
 * Text or other elements to appear above the columns.


 * image
 * Image to the right of all of the columns.


 * imageleft
 * Image to the left of all of the columns.


 * below
 * Text or other elements to appear below the columns.

Style parameters

 * style
 * CSS style/s to apply to the template's body (i.e. including space not used by columns)


 * titlestyle
 * CSS style/s to apply to titlebar; usually  (background defaults to NavHead default).


 * abovestyle
 * belowstyle
 * CSS style/s to apply to the above and below parameters, respectively.


 * basestyle
 * CSS style/s to apply to the title, above, and below, parameters, all at the same time.


 * imagestyle
 * CSS style/s to apply to the image parameter.


 * imageleftstyle
 * CSS style/s to apply to the imageleft parameter


 * colstyle
 * CSS style/s to apply across all columns; if used, usually  per titlestyle above.


 * oddcolstyle
 * evencolstyle
 * CSS style/s to apply to all odd/even-numbered columns, respectively.


 * colnstyle
 * CSS style/s to apply to the nth column only.


 * colheaderstyle
 * CSS style/s to apply to all column headers.


 * colnheaderstyle
 * CSS style/s to apply to the nth column header.


 * colnfooterstyle
 * CSS style/s to apply to the nth column footer cell.

Columns parameters

 * colwidth
 * Width, preferably in a proportional unit such as 'em', or as a percentage, used for each column whose width not specified by colNwidth below. Defaults to 10em. Examples:


 * fullwidth
 * If set to anything, then the total width of the columns are scaled linearly to make the sum of the widths 100%. A rather advanced parameter, this usually need not be used and should be left blank.  If a colheader or colfooter is used, then fullwidth is used automatically.  Example:


 * padding
 * Padding before first column, preferably in a proportional unit. Defaults to 5em. Padding is disabled by setting it to 0 (or 0em, or 0%).


 * colnwidth
 * The nth column's width (overrides colwidth above).


 * coln
 * The content of the nth column. If any columns are used, then   is required.  There can be a maximum of 20 columns.


 * colnheader
 * A header cell for the nth column that appears above the column. See below for examples.


 * ''colnfooter
 * A footer cell that appears below the nth column.


 * ''colnheadercolspan
 * A number specifying how many columns the nth column header should span. It defaults to 1.  If it is greater than one, then do not specify column headers that it covers.  For example, if , then leave   and   blank.


 * ''colnfootercolspan
 * A number specifying how many columns the nth column footer should span. It defaults to 1.  If it is greater than one, then do not specify column footers that it covers.  For example, if , then leave   and   blank.

Additional groups/lists
You may wish to add a few extra groups and/or lists below the columns. The following parameters are given to provide such functionality. See Navbox for a more complete description of how they work, and for more examples.


 * groupn
 * Allows up to 6 additional groups to go along with the lists below the columns.


 * listn
 * Allows up to 6 additional lists below the columns.


 * ''groupstyle
 * The general CSS style/s for the groups.


 * groupnstyle†
 * CSS style/s for the nth group parameter.
 * liststyle
 * The general CSS style/s for the lists.


 * listnstyle
 * CSS style/s for the nth list parameter.


 * listpadding
 * Amount of padding to have in each list cell.


 * 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.


 * evenodd
 * See Navbox for description.

Microformats

 * bodyclass : This parameter is inserted into the "class" attribute for the infobox as a whole.
 * titleclass : This parameter is inserted into the "class" attribute for the infobox's title caption.

This template supports the addition of microformat information. This is done by adding "class" attributes to various data cells, indicating what kind of information is contained within. To flag a navbox as containing hCard information about a person, for example, add the following parameter:


 * bodyclass = vcard

and


 * titleclass = fn

or (for example):


 * title = The books of Iain Banks

...and so forth.

See WikiProject Microformats for more information on adding microformat information to Wikipedia, and microformat for more information on microformats in general.

Example with percentage widths


Example with colnheader and colnfooter
The gray background for the columns is added for illustration only.

Example with colnheader using colnheadercolspan
The gray background for the columns is added for illustration only. This example shows the colnheadercolspan parameter being used, but you may also use colnfootercolspan to adjust the span of the footer cells.

Example to illustrate most fields
The gray background and centered text for the columns is for illustration only. The columns default to an off-white background and left text alignment. This example shows how you can use up to six additional groups/lists after the columns.

Using child navboxes
All three types of navbox templates, namely Navbox, Navbox with columns, and Navbox with collapsible groups, can be nested inside of one another using the  parameter (which is common to all three). For complex templates, it may be necessary to use nesting to achieve a desired look.

Nesting Navbox with columns in itself
This example shows how one can nest multiple Navbox with columns templates to get the right look. Edit this page to see the code. There is a main Navbox with columns and two additional Navbox with columns templates, with the "child" option set (see code).

Nesting other Navbox forms
This example shows Navbox, Navbox with collapsible groups and Navbox with columns all working together. Edit this page to see the code. Note that each of the child navboxes has the first parameter set to.