Skip to content

Navigation Component: Accessibility #25259

@Copons

Description

@Copons

Currently the Navigation component uses a waterfall navigation.
When entering a child menu:

  • The parent slides out to the left, and unmounts.
  • The child mounts and slides in from the right.

Accessibility concerns were raised in the original PR.
Since this component is currently in __experimental state, I've decided to merge it anyway, slating the a11y discussion to a follow up — and here we are!

These are some of the concerns that we should address (cc @afercia):

When a new sidebar "slides in", the previous content disappears producing a loss of context that's hard to understand for users, especially screen readers users.

Whether a part of a UI that is currently used by users gets hidden or removed from the DOM, that's a big accessibility problem. There's a complete loss of context. Information on the number of items in the list and their nesting level is broken. Screen reader users wouldn't have a clue that a part of the UI just doesn't exist any longer (why should they?)

Moving focus programmatically should be rare and only implemented when it's the expected behavior for some ARIA pattern.

Let's figure out an accessible way to create a hierarchical navigation!


EDIT: Let's have a look at the Inserter accessibility audit that presents similar challenges to this component.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions