Template:Static row numbers/sandbox
This is the template sandbox page for Template:Static row numbers (diff). See also the companion subpage for test cases. |
This template uses TemplateStyles: |
This template adds a column of row numbers to a table. The numbers do not sort with the rest of the table, remaining static. Optional classes are provided to display a column label or disable numbers on specific rows.
It works on desktop and mobile versions of Wikipedia pages.
Usage
[edit]Include this template by adding {{static row numbers}}
or its redirect {{static-row-numbers}}
above a table. Add the static-row-numbers
class to the table start wikitext. Optionally add the other classes listed below.
Wikitext:
{{static row numbers}}
{| class="static-row-numbers"
Table class | Summary |
---|---|
static-row-numbers
|
Required. Displays a column of row numbers aligned right. Requires at least one header row. |
static-row-header-text
|
Displays "No." text in column label. |
static-row-header-hash
|
Displays hash ("#") symbol in column label. |
static-row-header-left
|
Left aligns numbers. Default right. |
static-row-header-center
|
Center aligns numbers. Default right. |
Row class | Summary |
---|---|
static-row-header
|
Disables a row number. Disables borders between consecutive row usages (simulates rowspan ). Add to sorttop and sortbottom rows. Add to header rows except the first.
|
static-row-numbers-norank
|
Disables a row number. Maintains borders between consecutive row usages. Optionally add to data rows. |
Used with sortable
[edit]Multiple header rows in a sortable table should have the static-row-header
class added to all header rows except the first one so that they are not numbered when JavaScript is disabled. It is also needed on rows that use the sorttop
or sortbottom
class, described at #Disable number on specific rows.
Wikitext:
{{static row numbers}}
{| class="wikitable sortable static-row-numbers"
|-
! rowspan="2" | Color
! colspan="3" | Data
|- class="static-row-header"
! A !! B !! C
|-
| Red || 1 || 2 || 3
|-
| Lime || 4 || 5 || 6
|-
| Gold || 7 || 8 || 9
|- class="sortbottom static-row-header"
| '''Total''' || 12 || 15 || 18
|- class="sortbottom static-row-header"
| '''Average''' || 4 || 5 || 6
|}
Produces:
Color | Data | ||
---|---|---|---|
A | B | C | |
Red | 1 | 2 | 3 |
Lime | 4 | 5 | 6 |
Gold | 7 | 8 | 9 |
Total | 12 | 15 | 18 |
Average | 4 | 5 | 6 |
Used without sortable
[edit]Multiple header rows in a non-sortable table should have the static-row-header
class added to all header rows except the first one, described at #Disable number on specific rows.
Wikitext:
{{static row numbers}}
{| class="wikitable static-row-numbers"
|-
! rowspan="2" | Color
! colspan="3" | Data
|- class="static-row-header"
! A !! B !! C
|-
| Red || 1 || 2 || 3
|-
| Lime || 4 || 5 || 6
|-
| Gold || 7 || 8 || 9
|}
Produces:
Color | Data | ||
---|---|---|---|
A | B | C | |
Red | 1 | 2 | 3 |
Lime | 4 | 5 | 6 |
Gold | 7 | 8 | 9 |
Display "No." text in column label
[edit]- Note. This does not improve accessibility. A blind person said it does nothing for screen reader users. [1].
To display the "No." text in the number column's header (label), add the static-row-header-text
class to the table start wikitext.
Wikitext:
{{static row numbers}}
{| class="wikitable static-row-numbers static-row-header-text"
|-
! rowspan="2" | Color
! colspan="3" | Data
|- class="static-row-header"
! A !! B !! C
|-
...
Produces:
Color | Data | ||
---|---|---|---|
A | B | C | |
Red | 1 | 2 | 3 |
Lime | 4 | 5 | 6 |
Gold | 7 | 8 | 9 |
Display hash ("#") symbol in column label
[edit]- Note. This does not improve accessibility. A blind person said it does nothing for screen reader users. [2].
To display a hash ("#") symbol in the number column's header (label), add the static-row-header-hash
class to the table start wikitext.
Wikitext:
{{static row numbers}}
{| class="wikitable static-row-numbers static-row-header-hash"
|-
! rowspan="2" | Color
! colspan="3" | Data
|- class="static-row-header"
! A !! B !! C
|-
...
Produces:
Color | Data | ||
---|---|---|---|
A | B | C | |
Red | 1 | 2 | 3 |
Lime | 4 | 5 | 6 |
Gold | 7 | 8 | 9 |
Disable number on specific rows
[edit]This section details how to disable numbers on specific rows by adding either the static-row-numbers-norank
or static-row-header
class to the row wikitext.
The static-row-numbers-norank
class can be added to data rows to disable the number.
The static-row-header
class disables the number and border between other rows that use this class consecutively, simulating a rowspan
(see Help:Table#Colspan and rowspan). It should be added to:
- Header rows excluding the first. For sortable tables, it prevents numbering when JavaScript is disabled.
- Rows using the
sorttop
orsortbottom
class.
Note, the sorttop
or sortbottom
class is added to a row so it stays at the top or bottom of a sorted list, per Help:Sortable tables.
Wikitext:
{{static row numbers}}
{| class="wikitable sortable static-row-numbers"
|-
! rowspan="2" | Color
! colspan="3" | Data
|- class="static-row-header"
! A !! B !! C
|- class="sorttop static-row-header"
| '''Min''' || 1 || 2 || 3
|- class="sorttop static-row-header"
| '''Max''' || 10 || 11 || 12
|-
| Red || 1 || 2 || 3
|- class="static-row-numbers-norank"
| Lime || 4 || 5 || 6
|- class="static-row-numbers-norank"
| Gold || 7 || 8 || 9
|-
| Blue || 10 || 11 || 12
|- class="sortbottom static-row-header"
| '''Total''' || 22 || 26 || 30
|- class="sortbottom static-row-header"
| '''Average''' || 5.5 || 6.5 || 7.5
|}
Produces:
Color | Data | ||
---|---|---|---|
A | B | C | |
Min | 1 | 2 | 3 |
Max | 10 | 11 | 12 |
Red | 1 | 2 | 3 |
Lime | 4 | 5 | 6 |
Gold | 7 | 8 | 9 |
Blue | 10 | 11 | 12 |
Total | 22 | 26 | 30 |
Average | 5.5 | 6.5 | 7.5 |
Redirects
[edit]- {{Srn}}
- {{Fixed row numbers}}
See also
[edit]- {{Row numbers}} - Alternative method to add row numbers that are sortable and adjust when rows are deleted/inserted.
- Help:Sortable tables#Maintaining tables sorted alphabetically or by rank
- {{shy}} – Can be used to help narrow columns by adding a soft hyphen to a word to allow it to wrap.
More template styles for tables:
- {{sticky header}} - makes column headers stick to the top of the page while scrolling through table data.
- {{sticky table start}} - makes row and/or column headers stick to the top and/or left of the page while scrolling through table data.
- {{sort under}} - moves the sorting arrows under the headers.
- {{row hover highlight}} - adds row hover highlighting, and option for white background.
- {{table alignment}} - aligns the cells in a column, or a whole table.