Skip to content

Language selector options not announced correctly by Windows Narrator (WCAG 3.1.2) #8668

@ShubhamOulkar

Description

@ShubhamOulkar

While testing the language selector on nodejs.org with Windows Narrator, I identified an accessibility issue affecting multilingual announcements.

When navigating the language dropdown on the English page (<html lang="en">), some language options (e.g., Japanese, Korean, Chinese, Tamil, Uzbek) are not properly announced by Narrator.

Instead of reading the visible label (e.g., 日本語, 한국어, 中文, தமிழ், O‘zbekcha), Narrator only announces positional information such as “5 of 14”. The actual language name is not spoken.

This makes it impossible for screen reader users to determine which language they are selecting.

Watch a11y issue testing

Root cause

Because the page is lang="en", Narrator attempts to interpret the Japanese text using English pronunciation rules. This can result in Incorrect pronunciation Or the text not being announced at all. Only positional information being spoken.

Expected Behavior

Each option should be fully announced, for example: “Japanese, 5 of 14”, “Korean, 6 of 14”. Screen reader users must be able to identify which language they are selecting.

Fix

Add appropriate lang attributes to each language option.
Ref WCAG 2.2 – Success Criterion 3.1.2 (Language of Parts)

URL:

https://nodejs.org

Browser Name:

Chrome

Browser Version:

latest

Operating System:

windows 11

Note

Additional Testing Welcome
I tested this issue using Windows Narrator on Windows. Testing and confirmation on other platforms and screen readers would be very helpful, including macOS (VoiceOver), Android (TalkBack), NVDA.

If others can reproduce or provide additional findings across platforms, that would help validate the > fix and ensure consistent multilingual accessibility

If maintainers agree with this approach, I would be happy to work on a fix.

Metadata

Metadata

Assignees

No one assigned

    Labels

    accessibilityIssues concerning accessibility

    Type

    Projects

    Status

    📋 Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions