Make WordPress Core

Opened 10 years ago

Closed 10 years ago

#30010 closed enhancement (fixed)

hide admin menu separators for screen readers

Reported by: afercia's profile afercia Owned by: helen's profile helen
Milestone: 4.1 Priority: normal
Severity: normal Version: 4.0
Component: Menus Keywords: has-patch
Focuses: ui, accessibility Cc:


When a screen reader reads out the Admin menu, it may announce (depending on the user settings) how many items are inside the menu list. For example, the default Admin menu has 11 first level items and NVDA will announce:

"navigation landmark list with 13 items"

NVDA says "13" because it takes into account all the LI elements and 2 of them are just visual separators: empty LI with no link or text.

Screen reader users may be confused because they're informed about "13" items but then they can navigate to just 11 of them (about the last item, the "Collapse menu", see #29958).

Proposed patch just adds an aria-hidden=true attribute to separators, you can see the result in the NVDA Speech Viewer window in the screenshot below.

@screen reader users, the default first level 11 items are:

  • Dashboard
  • Posts
  • Media
  • Pages
  • Comments
  • Appearance
  • Plugins
  • Users
  • Tools
  • Settings
  • Collapse menu

Attachments (1)

30010.patch (1.2 KB) - added by afercia 10 years ago.

Download all attachments as: .zip

Change History (6)

10 years ago

#1 @afercia
10 years ago

  • Keywords has-patch added

This ticket was mentioned in Slack in #accessibility by afercia. View the logs.

10 years ago

#3 @joedolson
10 years ago

This looks like a good solution; recommend doing this, definitely.

#4 @helen
10 years ago

  • Milestone changed from Awaiting Review to 4.1

I didn't realize that's how we detect separators, ugh. Patch is fine though, will drop it in.

#5 @helen
10 years ago

  • Owner set to helen
  • Resolution set to fixed
  • Status changed from new to closed

In 30393:

Accessibility: hide admin menu separators from screen readers.

props afercia. fixes #30010.

Note: See TracTickets for help on using tickets.