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

A <figure>'s aria-label and description is not spoken when it has a child element with aria-hidden="true" #14514

Closed
pferreeHogan opened this issue Jan 5, 2023 · 0 comments · Fixed by #16471
Assignees
Labels
ARIA p3 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.
Milestone

Comments

@pferreeHogan
Copy link

pferreeHogan commented Jan 5, 2023

Steps to reproduce:

Given the following html:

<body>
  <h1>Heading 1</h1>
  <h2>Heading 2</h2>
  <figure aria-label="Label for figure" aria-description="A Description">
    <p aria-hidden="true">I'm paragraph text</p>
  </figure>
</body>

NVDA will not read the label or description for the figure element. This appears to be due to the child <p> having aria-hidden="true". When the aria-hidden attribute is removed NVDA will read the figure's label and description as expected.

Also, changing the <figure> to a <div> with a role="figure" reads as expected, so the following will read the label and description while properly ignoring the child <p>:

<body>
  <h1>Heading 1</h1>
  <h2>Heading 2</h2>
  <div aria-role="figure" aria-label="Label for figure" aria-description="A Description">
    <p aria-hidden="true">I'm paragraph text</p>
  </div>
</body>

Actual behavior:

The <figure> label and description attributes are not read when there is a child element that has aria-hidden="true"

Expected behavior:

NVDA should read the label and description attributes and ignore the hidden child elements using the <figure> element.

NVDA logs, crash dumps and other attachments:

System configuration

NVDA installed/portable/running from source:

NVDA version:

2022.4.0.27401

Windows version:

Version 10.0.19044 Build 19044

Name and version of other software in use when reproducing the issue:

Tested in Firefox and Chrome

Other information about your system:

Other questions

Does the issue still occur after restarting your computer?

Yes

Have you tried any other versions of NVDA? If so, please report their behaviors.

No

If NVDA add-ons are disabled, is your problem still occurring?

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

@seanbudd seanbudd added ARIA p3 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation. labels Jan 10, 2023
seanbudd pushed a commit that referenced this issue May 8, 2024
…e children (#16471)

Fixes #14514

Summary of the issue:
HTML figure elements with no accessible children (EG, all children set to aria-hidden=true) but with an aria-label or aria-description are not reported by NVDA.

Description of user facing changes
Elements with no accessible children but which have a label or description are now reported in browse mode. Note this only applies to elements which are still rendered; if all children are set to display: none, for example, NVDA still does not report the parent element.

Description of development approach
Render a single space in elements with no content but a label or description se
@nvaccessAuto nvaccessAuto added this to the 2024.3 milestone May 8, 2024
XLTechie pushed a commit to XLTechie/xlnvda that referenced this issue May 10, 2024
…e children (nvaccess#16471)

Fixes nvaccess#14514

Summary of the issue:
HTML figure elements with no accessible children (EG, all children set to aria-hidden=true) but with an aria-label or aria-description are not reported by NVDA.

Description of user facing changes
Elements with no accessible children but which have a label or description are now reported in browse mode. Note this only applies to elements which are still rendered; if all children are set to display: none, for example, NVDA still does not report the parent element.

Description of development approach
Render a single space in elements with no content but a label or description se
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ARIA p3 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants