Changes
make the table not look like ass
If the parameter "<code>sortable=yes</code>" is specified, the template generates invisible text that will cause the output to work in [[Help:Sorting|sortable]] [[Help:Tables|tables]], at the cost of causing problems for visually-impaired readers. Compare "Col 1" and "Col 2" in the following table:
{| class="sortable wikitable"
|-
! Title!!Col 1!!Col 2
|-
| Foo|| style="text-align:right;" |1066|| style="text-align:right;" |1066
|-
| Bar|| style="text-align:right;" |{{ {{ROOTPAGENAME}}}} 1510|| style="text-align:right;" |{{ {{ROOTPAGENAME}}|1510|sortable=yes}}
|-
| Baz|| style="text-align:right;" |1956|| style="text-align:right;" |1956
|-
| Jaz|| style="text-align:right;" |{{ {{ROOTPAGENAME}}}} 410|| style="text-align:right;" |{{ {{ROOTPAGENAME}}|410|sortable=yes}}
|}
"Col 1" uses <code><nowiki>{{</nowiki>{{ROOTPAGENAME}}<nowiki>}} 1510</nowiki></code>, and does not sort correctly. "Col 2" uses <code><nowiki>{{</nowiki>{{ROOTPAGENAME}}<nowiki>|1510|sortable=yes}}</nowiki></code>, and does sort correctly. This works because <code><nowiki>{{</nowiki>{{ROOTPAGENAME}}<nowiki>|1510|sortable=yes}}</nowiki></code> inserts an invisible [[span and div|span element]] at the start of the cell: <code><nowiki><span style="display:none;">1510</span></nowiki></code>. Although it is not rendered, it is still seen by the sorting code and makes sorting work.
The downside of this approach is that the invisible text is still rendered by [[screen reader]]s that are used by visually impaired readers, and by text browsers such as [[Lynx (web browser)|Lynx]], so the table will become garbled for readers who are using [[assistive technology]] or text browsers.
{| class="sortable wikitable"
|-
! Title!!Col 1!!Col 2
|-
| Foo|| style="text-align:right;" |1066|| style="text-align:right;" |1066
|-
| Bar|| style="text-align:right;" |{{ {{ROOTPAGENAME}}}} 1510|| style="text-align:right;" |{{ {{ROOTPAGENAME}}|1510|sortable=yes}}
|-
| Baz|| style="text-align:right;" |1956|| style="text-align:right;" |1956
|-
| Jaz|| style="text-align:right;" |{{ {{ROOTPAGENAME}}}} 410|| style="text-align:right;" |{{ {{ROOTPAGENAME}}|410|sortable=yes}}
|}
"Col 1" uses <code><nowiki>{{</nowiki>{{ROOTPAGENAME}}<nowiki>}} 1510</nowiki></code>, and does not sort correctly. "Col 2" uses <code><nowiki>{{</nowiki>{{ROOTPAGENAME}}<nowiki>|1510|sortable=yes}}</nowiki></code>, and does sort correctly. This works because <code><nowiki>{{</nowiki>{{ROOTPAGENAME}}<nowiki>|1510|sortable=yes}}</nowiki></code> inserts an invisible [[span and div|span element]] at the start of the cell: <code><nowiki><span style="display:none;">1510</span></nowiki></code>. Although it is not rendered, it is still seen by the sorting code and makes sorting work.
The downside of this approach is that the invisible text is still rendered by [[screen reader]]s that are used by visually impaired readers, and by text browsers such as [[Lynx (web browser)|Lynx]], so the table will become garbled for readers who are using [[assistive technology]] or text browsers.