-
Notifications
You must be signed in to change notification settings - Fork 6.8k
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
bug(MatSelect): NVDA announce 'table' when select options opened #21480
Comments
Form what I can see it cause by the addition of the |
I can reproduce it as well. I think that @nirkai is correct, because I get the following structure in the "Accessibility" panel in the dev tools: The |
@crisbeto it is indeed. |
…hrome The `mat-select` trigger element has an `aria-owns` pointing to the overlay and `display: inline-table` in its CSS. The combination of these two causes Chrome to infer the element as a `table` which results in NVDA reading out "table" any time a select is opened. These changes resolve the issue by setting the element to `role="presentation"`. I've tested out the change against NVDA and VoiceOver and it doesn't seem to affect the accessibility of the select, apart from the "table" not being read out anymore. Fixes angular#21480.
…hrome The `mat-select` trigger element has an `aria-owns` pointing to the overlay and `display: inline-table` in its CSS. The combination of these two causes Chrome to infer the element as a `table` which results in NVDA reading out "table" any time a select is opened. These changes resolve the issue by using flexbox to lay out the select trigger instead. Fixes angular#21480.
…hrome The `mat-select` trigger element has an `aria-owns` pointing to the overlay and `display: inline-table` in its CSS. The combination of these two causes Chrome to infer the element as a `table` which results in NVDA reading out "table" any time a select is opened. These changes resolve the issue by using flexbox to lay out the select trigger instead. Fixes angular#21480.
…hrome (#23446) The `mat-select` trigger element has an `aria-owns` pointing to the overlay and `display: inline-table` in its CSS. The combination of these two causes Chrome to infer the element as a `table` which results in NVDA reading out "table" any time a select is opened. These changes resolve the issue by using flexbox to lay out the select trigger instead. Fixes #21480.
…hrome (#23446) The `mat-select` trigger element has an `aria-owns` pointing to the overlay and `display: inline-table` in its CSS. The combination of these two causes Chrome to infer the element as a `table` which results in NVDA reading out "table" any time a select is opened. These changes resolve the issue by using flexbox to lay out the select trigger instead. Fixes #21480. (cherry picked from commit 0276784)
…hrome (angular#23446) The `mat-select` trigger element has an `aria-owns` pointing to the overlay and `display: inline-table` in its CSS. The combination of these two causes Chrome to infer the element as a `table` which results in NVDA reading out "table" any time a select is opened. These changes resolve the issue by using flexbox to lay out the select trigger instead. Fixes angular#21480.
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
When opening
mat-select
element NVDA screen reader announcetable
before announcing thelist
.Reproduction
See the official example from material documentation.
Steps to reproduce:
table
and thenlist
.Expected Behavior
table
should not be announced.More details
Environment
The text was updated successfully, but these errors were encountered: