Template:Reflist: Difference between revisions

Jump to navigation Jump to search
m (1 revision imported)
(Please stop, you apparently don't know what you're doing here and shouldn't fool around with heavily-used live templates. I'll post an explanation to the talk page momentarily.)
Line 1: Line 1:
<div class="reflist <!--
<div class="reflist <!--
  -->{{#if: {{{1|}}}
  -->{{#if: {{{1|}}} {{{colwidth|}}}
    | columns {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }}
    | columns references-column-width
      | references-column-width  
}}" style="<!--
      | references-column-count references-column-count-{{#if:1|{{{1}}}}} }}
    | {{#if: {{{colwidth|}}}
      | references-column-width }} }}" style="<!--
  -->{{#if: {{{1|}}}
  -->{{#if: {{{1|}}}
     | {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }}
     | {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }}
       | {{column-width|{{#if:1|{{{1}}}}}}}
       | {{column-width|1={{{1}}}}}
       | {{column-count|{{#if:1|{{{1}}}}}}} }}
       | {{#switch:{{{1|}}}|1=|2={{column-width|1=30em}}|#default={{column-width|1=25em}}}} }}
     | {{#if: {{{colwidth|}}}
     | {{#if: {{{colwidth|}}}
       | {{column-width|{{{colwidth}}}}} }} }} list-style-type: <!--
       | {{column-width|1={{{colwidth}}}}} }} }} list-style-type: <!--
  -->{{{liststyle|{{#switch: {{{group|}}}
  -->{{{liststyle|{{#switch: {{{group|}}}
     | upper-alpha
     | upper-alpha
Line 19: Line 16:
     | lower-roman = {{{group}}}
     | lower-roman = {{{group}}}
     | #default = decimal}}}}};">
     | #default = decimal}}}}};">
{{#tag:references|{{{refs|}}}|group={{{group|}}}}}</div><noinclude>
{{#tag:references|{{{refs|}}}|group={{{group|}}}|responsive={{#if:{{{1|}}}{{{colwidth|}}}|0|1}}}}</div>{{#invoke:Check for unknown parameters|check|unknown={{main other|[[Category:Pages using reflist with unknown parameters|_VALUE_{{PAGENAME}}]]}}|preview=Page using [[Template:Reflist]] with unknown parameter "_VALUE_"|ignoreblank=y| 1 | colwidth | group | liststyle | refs }}<noinclude>
{{Documentation}}
{{Documentation}}
</noinclude>
</noinclude>

Revision as of 12:05, 8 August 2017

This citation template provides formatting and organizational features for footnotes. It encapsulates the <references /> tag used by the Cite.php MediaWiki extension to show the list of references as defined by <ref> tags. It adds support for a reduced font size, columns, groups and List-defined references.

Parameters

  • First unnamed parameter:
    column-width: a typographic unit of measurement such as em, specifying the width for the reference list columns. Example: |30em. (Note: no space i.e. not |30 em.)
    column-count: a number specifying fixed columns into which the reference list is to be rendered. Example: |2 – this feature is deprecated as described below and should no longer be used.
  • refs: used with List-defined references.
  • group: identifies by name the subset of references to be rendered; the value should correspond to that used inline, e.g., {{Reflist|group=groupname}} renders all references with groupname as the group name (<ref group=groupname>). There are five pre-defined group names that style the list differently. See § Grouped references below.
  • liststyle: specifies the style used when the reference list is rendered. The default is a numbered list. When set, it will override the style set by the |group= parameter, without affecting group functionality. See § List styles below.

Obsolete

These parameters are obsolete and should be removed or replaced when encountered.

  • colwidth: same as specifying a column-width for the first unnamed parameter.
  • close: Until 2014 the parameter |close=1 was used to work around a bug involving multiple uses of {{Reflist}} on the same page.

Usage

Using only footnote-style references
Markup Renders as
Lorem ipsum.<ref>Source name, access date, etc.</ref>

Lorem ipsum dolor sit amet.<ref>Source name, access date, etc.</ref>

==References==
{{Reflist}}

Lorem ipsum.[1] Lorem ipsum dolor sit amet.[2]

References
  1. Source name, access date, etc.
  2. Source name, access date, etc.
Using only bibliographical style references (no direct references from the text)
Markup Renders as
Lorem ipsum. Lorem ipsum dolor sit amet.

==References==
{{Refbegin}}
* reference 1
* reference 2
{{Refend}}

Lorem ipsum. Lorem ipsum dolor sit amet.

References
  • reference 1
  • reference 2
Using both footnote-style and bibliography-style references
Markup Renders as
Lorem ipsum.<ref>Source name, access date, etc.</ref>

Lorem ipsum dolor sit amet.<ref>Source name, access date, etc.</ref>

==References==
{{Reflist}}

{{Refbegin}}
* reference 1
* reference 2
{{Refend}}

Lorem ipsum.[1] Lorem ipsum dolor sit amet.[2]

References
  1. Source name, access date, etc.
  2. Source name, access date, etc.
  • reference 1
  • reference 2

Columns

Browser support: Internet Explorer 10+, Firefox 2+, Chrome 4+, Safari 3.1+, Opera 11.1+

Using {{Reflist|30em}} will create columns with a minimum width of 30 em, allowing the browser to automatically choose the number of columns based on the width of the web browser. Choose a column width that is appropriate for the average width of the references on the page. A width measurement must conform to the format given in CSS 2.1 Syntax and basic data types: Lengths; in particular, there must not be a space between the number and the unit.

Using {{Reflist|2}} will force creation of a two-column reference list, and {{Reflist|3}} will force creation of a three-column list, and so on. This feature is now deprecated in favor of the option described above, which is better suited to flexible formatting for a variety of display screen sizes, ranging from mobile phones and tablets to wide-screen "cinema" displays. Forcing a fixed number of columns has been disabled in mobile view.

Widows and orphans

The use of columns can result in widows and orphans, where a citation at the bottom of a column may be split to the top of the next column. MediaWiki:Common.css includes CSS rules to prevent list items from breaking between columns. Widows may still show in extreme circumstances, such as a reference list formatted in columns where only a single reference is defined.

Markup Renders as
Lorem ipsum.<ref>Source name, access date, etc.</ref>
Lorem ipsum dolor sit amet.

==References==
{{Reflist|10em}}

Lorem ipsum.[1] Lorem ipsum dolor sit amet.

References
  1. Source name, access date, etc.

Practices

The number of columns to use is up to the editor, but some major practices include:

Examples

20em wide columns
Markup Renders as
Lorem ipsum.<ref>Source name, access date, etc.</ref>
Lorem ipsum dolor sit amet.<ref>Source name, access date, etc.</ref>
Lorem ipsum dolor sit amet.<ref>Source name, access date, etc.</ref>
Lorem ipsum dolor sit amet.<ref>Source name, access date, etc.</ref>
Lorem ipsum dolor sit amet.<ref>Source name, access date, etc.</ref>

==References==
{{Reflist|20em}}

Lorem ipsum.[1] Lorem ipsum dolor sit amet.[2] Lorem ipsum dolor sit amet.[3] Lorem ipsum dolor sit amet.[4] Lorem ipsum dolor sit amet.[5]

References
  1. Source name, access date, etc.
  2. Source name, access date, etc.
  3. Source name, access date, etc.
  4. Source name, access date, etc.
  5. Source name, access date, etc.

List-defined references

A list of references may be defined within {{Reflist}} using the |refs= parameter, just like including named <ref name="...">...</ref> elements inside the <references>...</references> container. This has been available since September 2009. There are new error messages associated with this feature, documented at Help:Cite errors, including one for references defined in {{Reflist}} but not used within the body.

Example

Markup Renders as
This is reference 1.<ref name="refname1" />
This is reference 2.<ref name="refname2" />

==References==
{{Reflist|refs=
<ref name="refname1">content1</ref>
<ref name="refname2">content2</ref>
}}

This is reference 1.[decimal 1] This is reference 2.[decimal 2]

References
  1. content1
  2. content2

Grouped references

References can be grouped into separate sections (for explanatory notes, table references, and the like) via group=:

<ref group=groupname>

where groupname is (for example) notes or sources. The group name need not be enclosed in quotes; this differs from the footnote marker where quotes are required if the group name includes a space.

Each group used in the article must have a matching reference list:

{{Reflist|group=groupname}}

Predefined groups

There are predefined group names that automatically set the labels in the footnote markers and the reference list to other styles. Thus, setting {{Reflist|group=lower-alpha}} will set the group to lower-alpha and will style the reference list with lower alpha characters. The matching footnote marker can be formed by <ref group=lower-alpha>...</ref>. This is made easier by a series of templates to set the group/label styles for the footnote marker and the reference list: {{#section:Help:Footnotes|pregrouptable}}

List styles

As noted in § Predefined groups, there are predefined groups that automatically add list styling. Using the listed templates is more convenient than using |liststyle=.

Reference lists are by default numbered lists. By using the |liststyle= parameter, you can control how the list is rendered. For example, using |liststyle=upper-roman will result in references being labeled with Roman numerals instead of decimal numbers. The parameter accepts any valid CSS value defined for list-style-type as shown below.

CSS list-style-type values
CSS 2.1 list-style-type values[1]
none
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
disc
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
circle
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
square
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
decimal
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
decimal-leading-zero
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
No No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
lower-roman
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
upper-roman
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
lower-alpha
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
upper-alpha
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
lower-greek
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
No No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
armenian
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
No No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
georgian
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
No No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
CSS2 list-style-type values deprecated in CSS 2.1[2]

...but still supported by some browsers.

hebrew
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
No No No No No Yes Yes Yes Yes Yes Yes Yes Yes Yes No No No
cjk-ideographic
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
No No No No No Yes Yes Yes Yes Yes Yes Yes Yes Yes No No No
hiragana
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
No No No No No Yes Yes Yes Yes Yes Yes Yes Yes Yes No No No
katakana
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
No No No No No Yes Yes Yes Yes Yes Yes Yes Yes Yes No No No
hiragana-iroha
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
No No No No No Yes Yes Yes Yes Yes Yes Yes Yes Yes No No No
katakana-iroha
  1. text
  2. text
  3. text
  4. text
Internet Explorer Firefox Safari Chrome Opera
6 7 8 9 10 3 4 5 4 5 9 10 11 12 10 11 12
No No No No No Yes Yes Yes Yes Yes Yes Yes Yes Yes No No No

It is possible to use |liststyle= so that the labels for the footnote marker and the reference list marker differ. This should be used with care as it can be confusing to readers. For example:

Markup Renders as
<ref group=note>Reference</ref>

{{Reflist|group=note|liststyle=lower-alpha}}

[note 1]

  1. Reference

Image flow issues

  1. "Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification". W3C. December 7, 2010.
  2. "Cascading Style Sheets, level 2 CSS2 Specification". W3C. April 11, 2008.

When an image is inserted to the left of the reference list, the list may flow under the image, clipping the reference numbers or hiding them behind the image frame, depending upon the browser.

Markup Renders as
Lorem ipsum dolor sit amet.<ref>Lorem ipsum dolor sit amet.</ref><ref>Lorem ipsum dolor sit amet.</ref>

==References==
[[File:Example.png|left|thumb|100px]]
{{Reflist}}

Lorem ipsum dolor sit amet.[1][2]

References
File:Example.png
  1. Lorem ipsum dolor sit amet.
  2. Lorem ipsum dolor sit amet.

To resolve this issue, use the columns feature. If columns are not desired, simply set it to one column using {{reflist|1}}. Note that if the list is longer than the image, it will cause the space below the image to remain empty. It is recommended that a comment be added so that follow-on editors will understand the use.

Markup Renders as
Lorem ipsum dolor sit amet.<ref>Lorem ipsum dolor sit amet.</ref><ref>Lorem ipsum dolor sit amet.</ref>

==References==
[[File:Example.png|left|thumb|100px]]
{{Reflist|1}}<!--Set one column to resolve flow issues with left floated image.-->

Lorem ipsum dolor sit amet.[1][2]

References
File:Example.png
  1. Lorem ipsum dolor sit amet.
  2. Lorem ipsum dolor sit amet.

Technical details

Font size

The font size should reduce to 90% for most browsers, but may appear to show at 100% for Internet Explorer and possibly other browsers.[1] As of December 21, 2010, the standard <references /> tag has the same font styling. The smaller font may be disabled through Preferences → Gadgets → Disable smaller font sizes of elements such as Infoboxes, Navboxes and References lists.

Browser support for columns

CSS3 multiple-column layout browser support
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)
No No No ≥ 11.1
(2011)

Multiple columns are generated by using CSS3, which is still in development; thus only browsers that properly support the multi-column property will show multiple columns with {{Reflist}}.[2][3]

These browsers support CSS3 columns:

These browsers do not support CSS3 columns:

  • Microsoft Trident-based browsers including Internet Explorer through to version 9[4]
  • Opera through to version 11

Supporting CSS

{{Reflist}} uses a CSS rule in MediaWiki:Common.css to set the font size:

  • div.reflist { font-size: 90%; }

One of the following classes is assigned by the template when either column count or column width is set:

  • .references-column-count and .references-column-count-n (where n is the number of columns)
  • .references-column-width

The following CSS properties are utilized using the {{column-count}} and {{column-width}} templates:

  • column-count CSS3 standard
  • column-width CSS3 standard
  • -moz-column-count Mozilla CSS extension
  • -moz-column-width Mozilla CSS extension
  • -webkit-column-count Webkit CSS extension
  • -webkit-column-width Webkit CSS extension

Customizing the view

By editing your CSS, the personal appearance of the reference list can be customized. From Preferences, select the Appearance tab, then on the selected skin select Custom CSS. After editing and saving, follow the instructions at the top of the page to purge. See Wikipedia:Skin#Customisation (advanced users) for more help.

Font size

The font size for all reference lists defaults to 90% of the standard size. To change it, add:

<source lang="css"> ol.references, div.reflist, div.refbegin {

 font-size: 90%;

} </source>

Change 90% to the desired size.

Columns

To disable columns, add:

<source lang="css"> .references-column-count, .references-column-width {

 -moz-column-count: 1 !important;
 -moz-column-width: auto !important;
 -webkit-column-count: 1 !important;
 -webkit-column-width: auto !important;
 column-count: 1 !important;
 column-width: auto !important;

} </source>

Similarly, to force all reference lists to a certain number of columns, change the number to the desired amount.

Column dividers

To add dividers (rules) between columns, add:

<source lang="css"> .references-column-count, .references-column-width {

 -moz-column-rule: 1px solid #aaa;
 -webkit-column-rule: 1px solid #aaa;
 column-rule: 1px solid #aaa;

} </source>

You can alter the appearance of the dividers by changing the values.

Perennial suggestions

Collapsing and scrolling

There have been a number of requests to add functionality for a collapsible or scrolling reference list. These requests have not been fulfilled due to issues with readability, accessibility, and printing. The applicable guidelines are at MOS:SCROLL. Links between the inline cite and the reference list do not work when the reference list is enclosed in a collapsed box.

To display the reference list in a scrollbox or collapsed per user, see Help:Reference display customization.

For discussion on previous attempts to do this with a template, see the discussions for Scrollref and Refbox.

Including the section title

There have been suggestions to include section header markup such as ==References==. This is inadvisable because:

Template data

This is the TemplateData documentation for this template used by VisualEditor and other tools.

See the monthly error report for this template.

TemplateData for Reflist

<templatedata> { "description": "This template displays the list of footnotes at the end of an article and provides additional formatting and organizing options. After hitting \"Apply changes\" and turning back to VE read mode, you will not see the references list. After hitting \"Save page\" and turning back to normal read mode the reference list will reappear with the changes applied, see T53146.", "params": { "1": { "label": "Columns / Column width", "type": "string", "required": false, "description": "Two modes supported. First mode: integer number of fixed columns into which the reference list is to be rendered. Second mode: typographic unit of measurement such as 'em', specifying the width for the reference list columns, e.g. '33em'; note that '33 em' will not be recognized", "default": "1", "aliases": [ "colwidth" ] }, "liststyle": { "label": "Liststyle", "type": "string", "required": false, "description": "Specifies the style used when the reference list is enumerated; accepts any valid CSS value defined for list-style-type", "default": "decimal" }, "group": { "label": "Group", "type": "string", "required": false, "description": "Group is an identifier which restricts the references that are shown. Without this parameter, this template only shows references with no group identifier. With a group identifier specified, only references with a matching group identifier are handled. The rest are left alone." }, "refs": { "label": "List of references", "type": "string", "required": false, "description": "Provides a space to define named references for use in the article. References defined in this space are not shown unless used somewhere in the article." } } } </templatedata>

See also

Variants

References

  1. See User:Edokter/fonttest for a comparison of font sizes for various browsers; see previous discussions on changing the font size to resolve the IE issue.
  2. "CSS3 Multi-Column Thriller". December 30, 2005. Retrieved November 24, 2006.
  3. "CSS3 module: Multi-column layout". W3C. December 15, 2005. Retrieved November 24, 2006.
  4. "CSS Compatibility and Internet Explorer: Multi-column Layout". Microsoft Developer Network. Microsoft. Retrieved March 16, 2011.