matrix-org / matrix-org/matrix.org
Enhancement: Improve the accessibility of the site header
- Dominant language
- JavaScript
- Stars
- 616
- Forks
- 463
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 19
Description
Currently, there are a few issues with the site's header:
- `` elements are used as buttons but do not contain the required attributes (e.g., `role`, `aria-pressed`) to mark them as such.
- A minimal amount of JavaScript will be required to emulate button functionality.
- `` elements cannot be navigated using the keyboard.
- Adding the attribute `tabindex=0` would fix this and allow all users to navigate to and from it with ease.
- `` elements of first-level navigation items are child elements of toggles (i.e., they are contained within a `` element), rather than sibling elements.
- Such a structure seems a little misguided. Even if it doesn't cause issues, at least for mouse users.
- `` elements are missing interactive visuals (e.g., `cursor: pointer`) that demonstrate their button-like functionality.
Contributor guide
Research direction
Start by locating the site's header markup and styles, then inspect how the label-based toggles and first-level navigation links currently behave. The work is done when the header controls are keyboard-navigable, expose appropriate button semantics, provide interactive visuals, and preserve usable navigation structure.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- accessibility, frontend, web-dev
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100