- Draft proposal for wiki(m/p)edia
- Make it looks like an RfC. MW devs will probably like it more when we request nav (and header?) tags be enabled).
- Collapsing tests at /collapsing
- Stylesheet: MediaWiki:Common.less
Rationale[]
Navboxes are undeniably used for navigating between pages, yet they are commonly implemented as tables. Unfortunately, this causes issues with performance[1] and accessibility[2] which is unacceptable(?) for a template found on over 2.4m pages[3]. They also don't render very well for mobile views.[4]
This is most likely a side-effect of what was supported in browsers at the time of their inception, but now it is time to move to something more inline with modern web standards.
- notes
- navboxes should have semantic meaning (as all modern HTML should)
- should use nav tag (T25932 and a bit of T66477)
- list accessibility improvements
- reference html5 spec
- wikipedia metadata
- used on 2.4m pages on enwiki alone
- T55437 remove navboxes for mobile views
- nested tables are bad
references[]
- ↑ Performance issues are caused by nested tables (i.e. navbox subgroups).[source]
- ↑ Accessibility issues are caused by the use of
th
which means navboxes are identified as data tables by screen readers.[source] - ↑ Template transclusion count
- ↑ T55437: Navboxes look bad in Mobile
Example structure[]
<nav> <header>Title</header> <dl> <dt>Group 1</dt> <dd>List 1 item 1 • List 1 item 2 • List 1 item 3 • List 1 item 4 • List 1 item 5</dd> <dt>Group 2</dt> <dd>List 2 item 1 • List 2 item 2 • List 2 item 3 • List 2 item 4 • List 2 item 5</dd> <dt>Group 3</dt> <dd>List 3 item 1 • List 3 item 2 • List 3 item 3 • List 3 item 4 • List 3 item 5</dd> </dl> </nav>
Test usage[]
- See Module:Navbox for implementation.