Daily Accessibility ReviewNavigation sidebar uses H6 headings, skipping levels H2–H5 #17797
Unanswered
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Summary
The navigation sidebar component
shell/components/nav/Group.vuerenders group headings as<h6>, creating a skip from<h1>directly to<h6>(skipping levels 2–5). Screen reader users relying on heading navigation will encounter a disorienting jump in the heading hierarchy.WCAG 2.2 Violations
<h6>without parent<h2>–<h5>headings does not accurately represent the document structure.Evidence
On the Cluster Management page (
/dashboard/c/_/manager/provisioning.cattle.io.cluster), the heading sequence is:This jumps from H1 to H6, skipping four heading levels.
Relevant Code (
shell/components/nav/Group.vue, lines 274–289)Suggested Fix
These sidebar navigation group labels are not content headings — they are labels for navigation groups within a
<nav>element. They should not use heading tags at all. Replace<h6>with a styled<span>or<div>:The same change applies to
shell/dialog/SearchDialog.vueline 121 (<h6>{{ g.label }}</h6>), which also uses<h6>for group labels in the search dialog.If semantic heading structure is desired inside the navigation, use
<h2>or<h3>appropriately, as these groups are sub-sections within a<nav>landmark.Steps to Reproduce
/dashboard/c/_/manager/provisioning.cattle.io.cluster.Beta Was this translation helpful? Give feedback.
All reactions