hatnote for non-table "collapse" |
Dipsacus fullonum (talk | contribs) Remove outdated no longer valid text from 2008 about customization |
||
(98 intermediate revisions by 58 users not shown) | |||
Line 1: | Line 1: | ||
{{Short description|Wikipedia project page}} |
|||
{{about|for collapsing tables|for collapsing other parts|WP:NAVFRAME}} |
|||
{{About|how to collapse content when editing Wikipedia pages|the Manual of Style on collapsing content|MOS:COLLAPSE}} |
|||
{{Wikipedia how-to|H:COLS}} |
|||
A '''collapsible''' element contains a toggle a reader can use to show or hide the element's content. Elements are made collapsible by adding the <code>mw-collapsible</code> class, or alternatively by using the {{tlx|Collapse}} template, or its variants {{tlx|Collapse top}} and {{tlx|Collapse bottom}}. |
|||
Use of these features in article content is governed by the guidelines {{section link|Wikipedia:Manual of Style#Scrolling lists and collapsible content}} generally, and more specifically by [[Wikipedia:Spoiler]]. |
|||
'''Collapsible tables''' provide a way to collapse and uncollapse a table when a show/hide button is clicked. The code for this feature is found in the [[MediaWiki:Common.js]]. |
|||
==Collapsible tables== |
|||
The initial state of any collapsible content can be controlled using a "collapsible table", because it also allows a table with only one element with content, and a header. |
|||
The <code>[[mw:Manual:Collapsible elements|mw-collapsible]]</code> class can make any element collapsible, but tables are particularly simple to make collapsible. Adding the <code>mw-collapsible</code> class to a table automatically positions the toggle, and selects which parts to collapse. |
|||
A common use is to make a collapsible layout table, which always displays an introduction or summary, but hides the rest of the content from immediate view. The introduction or summary is in the first row, and the content is in subsequent rows. The content is then easily accessible by using the 'show' button. |
|||
==Simple example== |
|||
Tables are simpler to work with, as you merely need to add the '''<tt>collapsible</tt>''' class to the table itself. For the [hide]/[show] link to appear, the table's first row must be a header row, that is, one of the cells in the first row must be declared with an exclamation mark (in wikisyntax). The use of the class <tt>wikitable</tt> in the example below is merely for appearance; it is not needed for <tt>collapsible</tt> to function. |
|||
In the examples below, the use of the class <code>wikitable</code> is merely for appearance; it is not needed for <code>mw-collapsible</code> to function. |
|||
{| class=wikitable style="width:80%;" align=center |
|||
{| class=wikitable style="width:80%;" |
|||
!Code entered!!Output produced |
!Code entered!!Output produced |
||
|- |
|- |
||
| |
|style="width:50%;"| |
||
<syntaxhighlight lang="wikitext">{| role="presentation" class="wikitable mw-collapsible" |
|||
| <strong>Lorem ipsum</strong> |
|||
'''!'''<nowiki> Simple collapsible table |
|||
|- |
|- |
||
| Lorem ipsum dolor sit amet |
| Lorem ipsum dolor sit amet |
||
|}</ |
|}</syntaxhighlight> |
||
|style="width:50% |
|style="width:50%;"| |
||
{| class="wikitable collapsible" |
{| role="presentation" class="wikitable mw-collapsible" |
||
| <strong>Lorem ipsum</strong> |
|||
! Simple collapsible table |
|||
|- |
|- |
||
| Lorem ipsum dolor sit amet |
| Lorem ipsum dolor sit amet |
||
Line 25: | Line 30: | ||
|} |
|} |
||
More complex data tables can also be collapsible. |
|||
Using the syntax above, collapsible tables are often used to always display an introduction to, or summary of, a lengthy discussion or section of content, while hiding the majority of that content from immediate view. The summary message is put in the header cell, and the content is placed into the body cell. The content is then easily accessible by clicking the 'show' button. The collapsible functionality is also available in larger and more complicated tables, as long as there is a header cell in the first row of the table. |
|||
{| class=wikitable style="width:80%;" |
{| class="wikitable" style="width:80%;" |
||
!Code entered!!Output produced |
!Code entered!!Output produced |
||
|- |
|- |
||
|style="width:50%; |
|style="width:50%;"| |
||
<syntaxhighlight lang="wikitext"> |
|||
<nowiki>{| class="wikitable </nowiki>'''collapsible'''<nowiki>" |
|||
{| class="wikitable mw-collapsible" |
|||
|A normal cell in the header row |
|||
|+ class="nowrap" | Winter Olympic Games |
|||
</nowiki>'''!'''<nowiki> colspan="2"| Header cell spans two cols |
|||
|- |
|||
| |
|||
| colspan="2" | Lorem ipsum dolor sit amet |
|||
! scope="col" | City |
|||
| Separate body cell |
|||
! scope="col" | Country |
|||
|}</nowiki> |
|||
|- |
|||
|style="width:50%; text-align:center;"| |
|||
! scope="row" | 1994 |
|||
{| class="wikitable collapsible" |
|||
| Lillehammer || Norway |
|||
|width=33%|A normal cell in the header row |
|||
|- |
|||
! colspan="2"| Header cell spans two cols |
|||
! scope="row" | 1998 |
|||
| Nagano || Japan |
|||
|} |
|||
</syntaxhighlight> |
|||
|style="width:50%;"| |
|||
{| class="wikitable mw-collapsible" |
|||
|+ class="nowrap" | Winter Olympic Games |
|||
|- |
|||
| |
|||
! scope="col" | City |
|||
! scope="col" | Country |
|||
|- |
|||
! scope="row" | 1994 |
|||
| Lillehammer || Norway |
|||
|- |
|- |
||
! scope="row" | 1998 |
|||
| colspan="2" | Lorem ipsum dolor sit amet |
|||
| Nagano || Japan |
|||
|width=33%| Separate body cell |
|||
|} |
|} |
||
|} |
|} |
||
==Collapsing |
==Collapsing by default== |
||
Just using the < |
Just using the <code>mw-collapsible</code> class leaves the element expanded by default, but it can be collapsed by the reader. It is also possible to make the element collapsed by default, and optionally expanded by adding other classes along with <code>mw-collapsible</code>. There are several methods for doing this, depending on the situations in which you want the element to collapse. However, content should not be collapsed by default per [[MOS:DONTHIDE]]. |
||
=== |
==="mw-collapsed"=== |
||
Adding the < |
Adding the <code>mw-collapsed</code> class will cause the element to {{em|always}} be initially collapsed, no matter what happens around it. It is the simplest method for doing so. Using the examples above: |
||
{| class=wikitable style="width:80%;" align=center |
{| class=wikitable style="width:80%;" align=center |
||
!Code entered!!Output produced |
!Code entered!!Output produced |
||
|- |
|- |
||
| |
|style="width:50%;"| |
||
<syntaxhighlight lang="wikitext">{| role="presentation" class="wikitable mw-collapsible mw-collapsed" |
|||
| <strong>Lorem ipsum</strong> |
|||
'''!'''<nowiki> Simple collapsible table |
|||
|- |
|- |
||
| Lorem ipsum dolor sit amet |
| Lorem ipsum dolor sit amet |
||
|}</ |
|}</syntaxhighlight> |
||
|style="width:50% |
|style="width:50%;"| |
||
{| class="wikitable collapsible collapsed" |
{| role="presentation" class="wikitable mw-collapsible mw-collapsed" |
||
| <strong>Lorem ipsum</strong> |
|||
! Simple collapsible table |
|||
|- |
|- |
||
| Lorem ipsum dolor sit amet |
| Lorem ipsum dolor sit amet |
||
|} |
|} |
||
|- |
|- |
||
|style="width:50%; |
|style="width:50%;"| |
||
<syntaxhighlight lang="wikitext"> |
|||
<nowiki>{| class="wikitable </nowiki>'''collapsible collapsed'''<nowiki>" |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
|A normal cell in the header row |
|||
|+ class="nowrap" | Winter Olympic Games |
|||
</nowiki>'''!'''<nowiki> colspan="2"| Header cell spans two cols |
|||
|- |
|||
| colspan="2" | Lorem ipsum dolor sit amet |
|||
| Separate body cell |
|||
|}</nowiki> |
|||
|style="width:50%; text-align:center;"| |
|||
{| class="wikitable collapsible collapsed" |
|||
|width=33%|A normal cell in the header row |
|||
! colspan="2"| Header cell spans two cols |
|||
|- |
|- |
||
| |
|||
| colspan="2" | Lorem ipsum dolor sit amet |
|||
! scope="col" | City |
|||
|width=33%| Separate body cell |
|||
! scope="col" | Country |
|||
|- |
|||
! scope="row" | 1994 |
|||
| Lillehammer || Norway |
|||
|- |
|||
! scope="row" | 1998 |
|||
| Nagano || Japan |
|||
|} |
|||
</syntaxhighlight> |
|||
|style="width:50%;"| |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
|+ class="nowrap" | Winter Olympic Games |
|||
|- |
|||
| |
|||
! scope="col" | City |
|||
! scope="col" | Country |
|||
|- |
|||
! scope="row" | 1994 |
|||
| Lillehammer || Norway |
|||
|- |
|||
! scope="row" | 1998 |
|||
| Nagano || Japan |
|||
|} |
|} |
||
|} |
|} |
||
=== |
==="autocollapse"=== |
||
{{hatnote|Using this technique causes the page to reflow/jump around and should generally be avoided.}} |
|||
Adding the <tt>'''autocollapse'''</tt> class causes the table to collapse when there are 2 or more collapsible tables on the page (this threshold might be different on other projects). The example below, therefore, collapses because there are numerous collapsible tables on the page. |
|||
Adding the <code>autocollapse</code> class causes an element to collapse if there are 2 or more collapsible elements on the page. The example below, therefore, collapses because there are numerous collapsible elements on this page. |
|||
{| class=wikitable style="width:80%;" align=center |
{| class=wikitable style="width:80%;" align=center |
||
!Code entered!!Output produced |
!Code entered!!Output produced |
||
|- |
|- |
||
| |
|style="width:50%;"| |
||
<syntaxhighlight lang="wikitext">{| role="presentation" class="wikitable mw-collapsible autocollapse" |
|||
| <strong>Lorem ipsum</strong> |
|||
'''!'''<nowiki> Simple collapsible table |
|||
|- |
|- |
||
| Lorem ipsum dolor sit amet |
| Lorem ipsum dolor sit amet |
||
|}</ |
|}</syntaxhighlight> |
||
|style="width:50% |
|style="width:50%;"| |
||
{| class="wikitable collapsible autocollapse" |
{| role="presentation" class="wikitable mw-collapsible autocollapse" |
||
| <strong>Lorem ipsum</strong> |
|||
! Simple collapsible table |
|||
|- |
|- |
||
| Lorem ipsum dolor sit amet |
| Lorem ipsum dolor sit amet |
||
Line 108: | Line 142: | ||
|} |
|} |
||
=== |
==="innercollapse" and "outercollapse"=== |
||
{{hatnote|Using this technique causes the page to reflow/jump around and should generally be avoided.}} |
|||
Using this pair of classes, it is possible to make a table collapsed by default only when it is ''contained within'' a particular object, such as another table. This is mainly useful for tables inside templates, which are often nested. |
|||
Using this pair of classes, it is possible to make an element collapsed by default only when it is {{em|contained within}} a particular outer element. An element with the <code>mw-collapsible</code> and <code>innercollapse</code> classes is collapsed by default if it is contained within an element with the <code>outercollapse</code> class; otherwise, it is uncollapsed by default. This is mainly useful for templates, which are often nested. |
|||
{| class=wikitable style="width:80%;" align=center |
{| class=wikitable style="width:80%;" align=center |
||
!Code entered!!Output produced |
!Code entered!!Output produced |
||
|- |
|- |
||
| |
|style="width:50%;"| |
||
<syntaxhighlight lang="wikitext"> |
|||
<nowiki>{| class="wikitable </nowiki>'''outercollapse'''<nowiki>" |
|||
{| role="presentation" class="wikitable mw-collapsible innercollapse" |
|||
! This table does not collapse |
|||
| This <code>innercollapse</code> element is |
|||
|- |
|- |
||
| <em>uncollapsed</em> by default |
|||
| But the table inside this cell |
|||
|} |
|||
<div class="wikitable outercollapse" style="padding:1em; background:#ccc;"> |
|||
{| class="wikitable </nowiki>'''collapsible innercollapse'''<nowiki>" |
|||
This is an element with the <code>outercollapse</code> class. |
|||
! Does collapse |
|||
{| role="presentation" class="wikitable mw-collapsible innercollapse" |
|||
| This <code>innercollapse</code> element is |
|||
|- |
|- |
||
| <em>collapsed</em> by default |
|||
| Hiding this part |
|||
|} |
|} |
||
</div> |
|||
</syntaxhighlight> |
|||
|}</nowiki> |
|||
|style="width:50% |
|style="width:50%;"| |
||
{| class="wikitable |
{| role="presentation" class="wikitable mw-collapsible innercollapse" |
||
| This <code>innercollapse</code> element is |
|||
! This table does not collapse |
|||
|- |
|- |
||
| <em>uncollapsed</em> by default |
|||
| But the table inside this cell |
|||
|} |
|||
{| class="wikitable collapsible innercollapse" |
|||
! Does collapse |
|||
<div class="wikitable outercollapse" style="padding:1em; background:#ccc;"> |
|||
This is an element with the <code>outercollapse</code> class. |
|||
{| role="presentation" class="wikitable mw-collapsible innercollapse" |
|||
| This <code>innercollapse</code> element is |
|||
|- |
|- |
||
| <em>collapsed</em> by default |
|||
| Hiding this part |
|||
|} |
|} |
||
</div> |
|||
|} |
|||
|} |
|} |
||
==Other notes== |
==Other notes== |
||
=== |
===Tables with captions=== |
||
A table without a caption will collapse to its first row. A table <em>with</em> a caption will collapse to its caption, with no rows, therefore no width. Use <code>class="nowrap"</code> or {{tlx|nowrap}} to keep the caption from being squeezed into a vertical column when the table is collapsed. |
|||
Collapsible tables can be combined with the [[Help:Sorting|sortable tables]] functionality without difficulty. However, because the hide/show button is placed in the first header cell located, its positioning can look a bit peculiar if the table is not wide enough: |
|||
{| |
{|class="wikitable" style="margin:0.5em auto;width:80%" |
||
!Code entered!!Output produced |
|||
|- |
|- |
||
!scope="col" width="60%"|Code entered |
|||
!scope="col" width="40%"|Output produced |
|||
<nowiki>{| class="wikitable </nowiki>'''collapsible sortable'''<nowiki>" |
|||
!Name!!Score |
|||
|- |
|- |
||
|width="60%"| |
|||
|John||59 |
|||
<syntaxhighlight lang="wikitext">{|class="wikitable sortable mw-collapsible" |
|||
|+ class="nowrap" | Somewhat long table caption |
|||
! Name !! Score |
|||
|- |
|- |
||
| |
| John || 59 |
||
|- |
|- |
||
|Bob||72 |
| Bob || 72 |
||
|}</ |
|}</syntaxhighlight> |
||
|width="40%"| |
|||
|style="width:50%; text-align:center;"| |
|||
{|class="wikitable sortable collapsible" |
{|class="wikitable sortable mw-collapsible" |
||
|+ class="nowrap" | Somewhat long table caption |
|||
!Name!!Score |
|||
! Name !! Score |
|||
|- |
|- |
||
|John||59 |
| John || 59 |
||
|- |
|- |
||
| |
| Bob || 72 |
||
|- |
|||
|Bob||72 |
|||
|} |
|} |
||
|} |
|} |
||
Next example uses '''{{tlx|nowrap}}''' where the end brackets become the wrap point. '''<code><style=max-width:Xem;</code>''' will not work. |
|||
{| class="wikitable collapsible collapsed" style="border:none; width:150px; float:right;" |
|||
!header |
|||
{|class="wikitable" style="margin:0.5em auto;width:80%" |
|||
|- |
|- |
||
!scope="col" width="60%"|Code entered |
|||
|style="padding:0; border:none;"| |
|||
!scope="col" width="40%"|Output produced |
|||
{|class="wikitable sortable" style="margin:0; width:100%;" |
|||
!a |
|||
!b |
|||
|- |
|- |
||
|width="60%"| |
|||
|3 |
|||
<syntaxhighlight lang="wikitext">{|class="wikitable sortable mw-collapsible" |
|||
|4 |
|||
|+ {{nowrap|A longer table caption needs to wrap}} for cell phones, etc. |
|||
! Name !! Score |
|||
|- |
|- |
||
| John || 59 |
|||
|5 |
|||
| |
|- |
||
| Bob || 72 |
|||
|}</syntaxhighlight> |
|||
|width="40%"| |
|||
{|class="wikitable sortable mw-collapsible" |
|||
|+ {{nowrap|A longer table caption needs to wrap}} for cell phones, etc. |
|||
! Name !! Score |
|||
|- |
|||
| John || 59 |
|||
|- |
|||
| Bob || 72 |
|||
|} |
|} |
||
|} |
|} |
||
Possible alternative is sortable table inside one-cell collapsible table, see example on the right. |
|||
=== |
===Sortable tables=== |
||
Collapsible tables can be combined with the [[Help:Sorting|sortable tables]] functionality without difficulty. However, because the hide/show button is placed with <code><!--Do not write mw- here-->collapsible</code> in the first header cell located or with <code>mw-collapsible</code> in the right header cell (this difference [[Talk:List of highest-grossing films#Franchise table|may change]]), its positioning can look a bit peculiar if the cell is not wide enough: |
|||
Registered users can edit [[Special:MyPage/skin.js|their personal js file]] file to change some of the variables used. |
|||
{|class="wikitable" style="margin:0.5em auto;width:80%" |
|||
<source lang=javascript> |
|||
|- |
|||
autoCollapse = 4 //how many collapsible tables on the page before autocollapse works (default=2) |
|||
!scope="col" width="60%"|Code entered |
|||
var collapseCaption = 'collapse' //text of the [hide] link (default='hide') |
|||
!scope="col" width="40%"|Output produced |
|||
var expandCaption = 'uncollapse' //text of the [show] link (default='show') |
|||
|- |
|||
</source> |
|||
|width="60%"| |
|||
<syntaxhighlight lang="wikitext">{|class="wikitable mw-collapsible sortable" style="width:5em" |
|||
<!--table width too narrow, on purpose here--> |
|||
|- |
|||
! Name !! Score |
|||
|- |
|||
| John || 59 |
|||
|- |
|||
| Bob || 72 |
|||
|}</syntaxhighlight> |
|||
|width="40%"| |
|||
{|class="wikitable sortable mw-collapsible" style="width:5em" |
|||
<!--table width too narrow, on purpose here--> |
|||
|- |
|||
! Name !! Score |
|||
|- |
|||
| John || 59 |
|||
|- |
|||
| Bob || 72 |
|||
|} |
|||
|} |
|||
A possible alternative is to add a caption over the table. See the following example. |
|||
===Other HTML elements=== |
|||
The code that performs the manipulation only checks for table elements, so these classes will not work for other elements, such as <tt><nowiki><div></nowiki></tt> or <tt><nowiki><span></nowiki></tt>. There is a similar feature for use with <tt><nowiki><div></nowiki></tt> elements, called "NavFrame". See [[Wikipedia:NavFrame]] |
|||
{|class="wikitable" style="margin:0.5em auto;width:80%" |
|||
|- |
|||
!scope="col" width="60%"|Code entered |
|||
!scope="col" width="40%"|Output produced |
|||
|- |
|||
|width="60%"| |
|||
<syntaxhighlight lang="wikitext">{|class="wikitable sortable mw-collapsible" |
|||
|+ class="nowrap" | Caption |
|||
! Name !! Score |
|||
|- |
|||
| John || 59 |
|||
|- |
|||
| Bob || 72 |
|||
|}</syntaxhighlight> |
|||
|width="40%"| |
|||
{|class="wikitable sortable mw-collapsible" |
|||
|+ class="nowrap" | Caption |
|||
! Name !! Score |
|||
|- |
|||
| John || 59 |
|||
|- |
|||
| Bob || 72 |
|||
|} |
|||
|} |
|||
===Limitations=== |
===Limitations=== |
||
<!--The content of this section is transcluded at [[Template:Collapse top/doc#Limitations]] and [[Template:Collapse/doc#Limitations]].--> |
|||
This functionality requires the end-user's browser to have Javascript enabled. If Javascript is disabled, the default behaviour is to ''show'' the content. |
|||
* This functionality requires the end-user's browser to have [[JavaScript]] enabled. If JavaScript is disabled, the default behaviour is to show the content. |
|||
* It doesn't work on mobile browsers (or desktop browsers in mobile mode) either. |
|||
==See also== |
==See also== |
||
Documentation: |
|||
*[[meta:Help:Collapsing]] |
|||
* {{Section link|Wikipedia:Manual of Style|Scrolling lists and collapsible content}} – style guidelines for collapsing content |
|||
*[[help:Table]] |
|||
*[[ |
* [[Help:Table]] |
||
* [[Help:Table of contents]] |
|||
*[[Template:Collapse]] |
|||
Templates: |
|||
* {{Tl|Collapse}} |
|||
* {{Tl|Collapse-top}} and {{Tl|Collapse-bottom}} – more feature-rich than {{Tlf|collapse}} |
|||
* {{Tl|Hidden}} |
|||
* {{Tl|Navbar-collapsible}} |
|||
== External links == |
|||
*[[mw:Manual:Collapsible elements]] |
|||
*[[mw:ResourceLoader/Default modules#jquery.makeCollapsible]] |
|||
{{Wikipedia technical help|collapsed}} |
|||
{{DEFAULTSORT:{{PAGENAME}}}} |
|||
[[Category: |
[[Category:Wikipedia how-to]] |
||
[[Category:Wikipedia tables]] |
Latest revision as of 15:38, 9 May 2024
A collapsible element contains a toggle a reader can use to show or hide the element's content. Elements are made collapsible by adding the mw-collapsible
class, or alternatively by using the {{Collapse}}
template, or its variants {{Collapse top}}
and {{Collapse bottom}}
.
Use of these features in article content is governed by the guidelines Wikipedia:Manual of Style § Scrolling lists and collapsible content generally, and more specifically by Wikipedia:Spoiler.
Collapsible tables
The mw-collapsible
class can make any element collapsible, but tables are particularly simple to make collapsible. Adding the mw-collapsible
class to a table automatically positions the toggle, and selects which parts to collapse.
A common use is to make a collapsible layout table, which always displays an introduction or summary, but hides the rest of the content from immediate view. The introduction or summary is in the first row, and the content is in subsequent rows. The content is then easily accessible by using the 'show' button.
In the examples below, the use of the class wikitable
is merely for appearance; it is not needed for mw-collapsible
to function.
Code entered | Output produced | ||
---|---|---|---|
{| role="presentation" class="wikitable mw-collapsible"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}
|
|
More complex data tables can also be collapsible.
Code entered | Output produced | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
{| class="wikitable mw-collapsible"
|+ class="nowrap" | Winter Olympic Games
|-
|
! scope="col" | City
! scope="col" | Country
|-
! scope="row" | 1994
| Lillehammer || Norway
|-
! scope="row" | 1998
| Nagano || Japan
|}
|
|
Collapsing by default
Just using the mw-collapsible
class leaves the element expanded by default, but it can be collapsed by the reader. It is also possible to make the element collapsed by default, and optionally expanded by adding other classes along with mw-collapsible
. There are several methods for doing this, depending on the situations in which you want the element to collapse. However, content should not be collapsed by default per MOS:DONTHIDE.
"mw-collapsed"
Adding the mw-collapsed
class will cause the element to always be initially collapsed, no matter what happens around it. It is the simplest method for doing so. Using the examples above:
Code entered | Output produced | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}
|
| |||||||||
{| class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Winter Olympic Games
|-
|
! scope="col" | City
! scope="col" | Country
|-
! scope="row" | 1994
| Lillehammer || Norway
|-
! scope="row" | 1998
| Nagano || Japan
|}
|
|
"autocollapse"
Adding the autocollapse
class causes an element to collapse if there are 2 or more collapsible elements on the page. The example below, therefore, collapses because there are numerous collapsible elements on this page.
Code entered | Output produced | ||
---|---|---|---|
{| role="presentation" class="wikitable mw-collapsible autocollapse"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}
|
|
"innercollapse" and "outercollapse"
Using this pair of classes, it is possible to make an element collapsed by default only when it is contained within a particular outer element. An element with the mw-collapsible
and innercollapse
classes is collapsed by default if it is contained within an element with the outercollapse
class; otherwise, it is uncollapsed by default. This is mainly useful for templates, which are often nested.
Code entered | Output produced | ||||
---|---|---|---|---|---|
{| role="presentation" class="wikitable mw-collapsible innercollapse"
| This <code>innercollapse</code> element is
|-
| <em>uncollapsed</em> by default
|}
<div class="wikitable outercollapse" style="padding:1em; background:#ccc;">
This is an element with the <code>outercollapse</code> class.
{| role="presentation" class="wikitable mw-collapsible innercollapse"
| This <code>innercollapse</code> element is
|-
| <em>collapsed</em> by default
|}
</div>
|
This is an element with the
|
Other notes
A table without a caption will collapse to its first row. A table with a caption will collapse to its caption, with no rows, therefore no width. Use class="nowrap"
or {{nowrap}}
to keep the caption from being squeezed into a vertical column when the table is collapsed.
Code entered | Output produced | ||||||
---|---|---|---|---|---|---|---|
{|class="wikitable sortable mw-collapsible"
|+ class="nowrap" | Somewhat long table caption
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|
|
Next example uses {{nowrap}}
where the end brackets become the wrap point. <style=max-width:Xem;
will not work.
Code entered | Output produced | ||||||
---|---|---|---|---|---|---|---|
{|class="wikitable sortable mw-collapsible"
|+ {{nowrap|A longer table caption needs to wrap}} for cell phones, etc.
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|
|
Sortable tables
Collapsible tables can be combined with the sortable tables functionality without difficulty. However, because the hide/show button is placed with collapsible
in the first header cell located or with mw-collapsible
in the right header cell (this difference may change), its positioning can look a bit peculiar if the cell is not wide enough:
Code entered | Output produced | ||||||
---|---|---|---|---|---|---|---|
{|class="wikitable mw-collapsible sortable" style="width:5em"
<!--table width too narrow, on purpose here-->
|-
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|
|
A possible alternative is to add a caption over the table. See the following example.
Code entered | Output produced | ||||||
---|---|---|---|---|---|---|---|
{|class="wikitable sortable mw-collapsible"
|+ class="nowrap" | Caption
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|
|
Limitations
- This functionality requires the end-user's browser to have JavaScript enabled. If JavaScript is disabled, the default behaviour is to show the content.
- It doesn't work on mobile browsers (or desktop browsers in mobile mode) either.
See also
Documentation:
- Wikipedia:Manual of Style § Scrolling lists and collapsible content – style guidelines for collapsing content
- Help:Table
- Help:Table of contents
Templates:
- {{Collapse}}
- {{Collapse-top}} and {{Collapse-bottom}} – more feature-rich than {{collapse}}
- {{Hidden}}
- {{Navbar-collapsible}}