facebook/Docusaurus

Bug(navbar): languages and doc version drop downs are inaccessible via the keyboard and screen reader

开放

#8,478 创建于 2022年12月23日

 (11 条评论) (0 个反应) (0 位负责人)TypeScript (9,882 个派生)batch import
bugdomain: a11yhelp wantedstatus: needs more information

仓库指标

星标
 (64,917 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

Have you read the Contributing Guidelines on issues?

Prerequisites

  • I'm using the latest version of Docusaurus.
  • I have tried the npm run clear or yarn clear command.
  • I have tried rm -rf node_modules yarn.lock package-lock.json and re-installing packages.
  • I have tried creating a repro with https://new.docusaurus.io.
  • I have read the console error message carefully (if applicable).

Description

The languages and docs version drop-down menus are not accessible via the keyboard. This violates WCAG 2.1.1 which states that all functionalities on the website must be accessible via the keyboard. Drop-down menus don't fall under the exceptions of freehand drawing, or a game intended to teach a specific movement. https://www.w3.org/WAI/WCAG21/Understanding/keyboard.html https://developer.mozilla.org/en-US/docs/Web/Accessibility/Understanding_WCAG/Operable

Reproducible demo

No response

Steps to reproduce

  1. Start NVDA
  2. Navigate to https://docusaurus.io/
  3. Tab to the 2.2.0 menu
  4. The user is unable to activate the menu with the keyboard
  5. Tab to English menu
  6. The user is unable to activate the menu with the keyboard

https://user-images.githubusercontent.com/11358567/209265366-005966b3-ea8d-48bf-87c7-e22dad7d548a.mp4

Expected behavior

I thought the menus would open automatically as I tabbed to them giving me the option to choose the doc version and language with the arrow keys and enter key. I also expect to be able to close the menu by pressing tab again.

Actual behavior

I am unable to activate the menus at all with the keyboard.

Your environment

  • Public source code:
  • Public site URL: https://docusaurus.io/
  • Docusaurus version used: 2.2.0
  • Environment name and version (e.g. Chrome 89, Node.js 16.4): Edge 108
  • Operating system and version (e.g. Ubuntu 20.04.2 LTS): Windows 11

Self-service

  • I'd be willing to fix this bug myself.

贡献者指南