mirror of
https://gerrit.wikimedia.org/r/mediawiki/skins/Vector.git
synced 2024-11-29 01:45:00 +00:00
efe33d5d76
- We had to add nav element to wrap TOC in all places - Make sure proper nav is only displayed so landmark do not get confused - Remove Eslint block on rules compat/compat for no support IE 11, this was blocking commit - Run lint:fix:js and lint:fix:styles - Fix maxSize in bundlesize.config.json Bug: T324505 Change-Id: I36d26240b87de33318ff1edf97a410872a438103
54 lines
2.2 KiB
Plaintext
54 lines
2.2 KiB
Plaintext
{{!
|
|
Sticky header is hidden from screen readers because it contains duplicated content
|
|
that is already accessible to assistive tech via landmark roles, element type, and other navigation methods.
|
|
The interactive elements in the sticky header should have the `tabindex="-1"` attribute set to ensure
|
|
the header is also not tab accessible.
|
|
|
|
See https://dequeuniversity.com/rules/axe/4.1/aria-hidden-focus and https://phabricator.wikimedia.org/T290201
|
|
for more context.
|
|
|
|
The exception to this is the TOC in the sticky header, which is not duplicated and is moved into the
|
|
sticky header in the DOM. We apply `aria-hidden` to all the contents of the sticky header except for the TOC.
|
|
}}
|
|
<header id="vector-sticky-header" class="vector-sticky-header">
|
|
<div class="vector-sticky-header-start">
|
|
<div class="vector-sticky-header-icon-start mw-ui-icon-flush-left mw-ui-icon-flush-right" aria-hidden="true">
|
|
{{#data-button-start}}
|
|
{{>Button}}
|
|
{{/data-button-start}}
|
|
</div>
|
|
{{#data-search}}
|
|
{{>SearchBox}}
|
|
{{/data-search}}
|
|
<div class="vector-sticky-header-context-bar">
|
|
{{! TOC is moved into this dropdown from the sidebar in stickyHeader.js. }}
|
|
<nav role="navigation" aria-label="{{ msg-vector-toc-label }}" class="vector-toc-landmark">
|
|
{{#data-sticky-header-toc-dropdown}}
|
|
{{>Dropdown/Open}}
|
|
{{#data-sticky-header-toc-pinnable-container}}
|
|
{{>PinnableContainer/Unpinned/Open}}
|
|
{{>PinnableContainer/Close}}
|
|
{{/data-sticky-header-toc-pinnable-container}}
|
|
{{>Dropdown/Close}}
|
|
{{/data-sticky-header-toc-dropdown}}
|
|
</nav>
|
|
<div class="vector-sticky-header-context-bar-primary" aria-hidden="true" {{{html-user-language-attributes}}}>{{{html-title}}}</div>
|
|
</div>
|
|
</div>
|
|
<div class="vector-sticky-header-end{{^is-page-tools-enabled}} mw-ui-icon-flush-right{{/is-page-tools-enabled}}" aria-hidden="true">
|
|
<div class="vector-sticky-header-icons">
|
|
{{#data-buttons}}
|
|
{{>Button}}
|
|
{{/data-buttons}}
|
|
</div>
|
|
{{#data-primary-action}}
|
|
{{>Button}}
|
|
{{/data-primary-action}}
|
|
<div class="vector-sticky-header-icon-end">
|
|
<div class="vector-user-links">
|
|
{{! User menu items with unique ids are cloned here from the fixed header in stickyHeader.js. }}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</header>
|