Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Twenty Twenty-Five Theme: Critical Menu Accessibility Issue with Screen Readers #8674

Open
marcuswisecaesar opened this issue Feb 2, 2025 · 9 comments
Labels

Comments

@marcuswisecaesar
Copy link

Quick summary

The WordPress.com Twenty Twenty-Five theme's navigation menu is inaccessible to screen reader users, specifically with VoiceOver on iOS devices. The menu does not respond to touch interactions when using VoiceOver, preventing blind users from accessing site navigation.

Steps to reproduce

  1. Enable VoiceOver on an iOS device (iPhone/iPad)

    • Go to Settings > Accessibility > VoiceOver
    • Turn VoiceOver on
  2. Visit any site using the Twenty Twenty-Five theme with a navigation menu

    • Test site: stephswensonband.ca
    • Note: Issue exists on both home page and internal pages
  3. Attempt to interact with the navigation menu

    • Navigate to the menu using VoiceOver swipe gestures
    • Menu is announced as a "menu pop-up button."
    • Attempt to activate the menu using VoiceOver tap gestures
  4. Observe the failure

    • Menu does not open/expand
    • No feedback is provided to the screen reader
    • Navigation options remain inaccessible
    • No alternative method to access navigation is provided

Additional Information:

  • Browser/Platform: iOS Safari with VoiceOver
  • Theme: Twenty Twenty-Five (latest version)
  • Error feedback: None (silent failure)
  • Comparative reference: The same menu structure works correctly on the Twenty Twenty theme (see yellowdockmusic.ca)

Site owner impact

Fewer than 20% of the total website/platform users

Severity

Major

What other impact(s) does this issue have?

No response

If a workaround is available, please outline it here.

Temporary Workaround

  1. Switch to the Twenty Twenty theme
  2. Use a basic navigation block configuration
  3. Implement a navigation menu in the Customizer

Platform (Simple and/or Atomic)

No response

@marcuswisecaesar
Copy link
Author

Interaction: zen-9336561

@Robertght
Copy link

Robertght commented Feb 5, 2025

I recorded a demo on how it's working on 2020 vs their website below:

ScreenRecording_02-05-2025.10-12-14_1.MP4

However, I'm not sure I see how this should work correctly.

Also, I don't see any issues raised in core: https://core.trac.wordpress.org/search?q=Twenty+Twenty-Five&noquickjump=1&ticket=on

I can see this was asked here too: p1737636524825429-slack-C0FGK24F9

I'm leaving this as Needs triage for now as I'm not sure where to ask.

@jartes
Copy link

jartes commented Feb 5, 2025

I spent some time on this one by checking the dotorg Twenty Twenty-Five demo site: https://wp-themes.com/twentytwentyfive and it seems it's working fine, but I need more time to investigate. It could be an issue with the navigation block?

@alaczek
Copy link
Contributor

alaczek commented Feb 5, 2025

I tried replicating, but I don't have enough experience using VoiceOver. Since it's a default theme it would be helpful to establish if this is happening on .com only or both .com and the self-hosted version.

@Robertght
Copy link

Robertght commented Feb 6, 2025

@frosso helped replicate the issue through their Android device, using both Chrome and Brave.(Thank you!!)

They were also able to replicate this on a twentytwentyfour and it seems like this is a navigation issue more than a theme one.

Slack thread: p1738746145777269/1738743698.156649-slack-C0FGK24F9

cc @alaczek

@Robertght
Copy link

I also pinged in #gutenberg: p1738828860790919-slack-C45SNKV4Z

@Robertght Robertght moved this from Needs Triage to In Triage in Automattic Prioritization: The One Board ™ Feb 6, 2025
@jasmussen
Copy link
Member

jasmussen commented Feb 6, 2025

Thanks for the screen recording. It led me on the trail of re-testing the theme, and confirming that this is not an issue with the Navigation Block. Twenty Twenty appears to be using a custom overlay menu implementation. From a quick testing, it does not look like the theme has a header template part where an actual Navigation block could be inserted, so beyond switching to a newer theme like Twenty Twenty-Five, it looks like this needs a core patch to the theme itself.

Edit: Apologies, looks like the issue is referring to the Twenty Twenty Five theme, not Tweny Twenty. I over-indexed on the demo video. Looking more into this now.

@frosso
Copy link

frosso commented Feb 6, 2025

I think the issue is happening on touch screens specifically.

On mobile/touch devices, to move focus to the next item, you usually swipe. I think that the swiping action on the screen is triggering the menu to collapse.

To avoid the menu collapsing, you either:

  • Need to use an external input device (like in the simulator, or use TAB on a keyboard
  • Need to have spatial awareness and specifically tap on the click area of the menu item you want to click

But those two options are not practical for any user, let alone a person with impaired vision.

I think that explains why the iOS simulator and keyboard navigation alone don't allow to reproduce this issue.

@jasmussen
Copy link
Member

Can confirm the above, that I can swipe to the menu, double tap to open, but the subsequent swipe closes the menu rather than swiping to the first item. Note, however, this is specific to the navigation dropdown items, not the overlay menu.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Development

No branches or pull requests

7 participants