Skip to content

Conversation

@ymrl
Copy link
Owner

@ymrl ymrl commented Aug 30, 2025

The svg-skip rule indicates <svg> element without <title> descendant, saying "May be skipped". But image-name rule says 'No <title> element' for almost same condition, these warnings are overlapped.

The svg-skip rule indicates `<svg>` element without `<title>` descendant, saying "May be skipped".
But image-name rule says 'No `<title>` element' for almost same condition, these warnings are overlapped.
@ymrl
Copy link
Owner Author

ymrl commented Aug 30, 2025

I found that only "May be skipped" is shown for <svg> with aria-label attribute and no role attribute.
In this situation, <svg> element has graphics-document according to html-aam and svg-aam, but handled as having image role by Chrome. (in Firefox, as graphics-document) role.

@ymrl
Copy link
Owner Author

ymrl commented Aug 31, 2025

<svg> element with aria-label, and without any role:

  • macOS VoiceOver + Safari / Chrome / Firefox: read the content of aria-label
  • iOS VoiceOver + Safari: read as 'image', cannot read the aria-label
  • NVDA + Chrome: read the content of aria-label
  • NVDA + Firefox: read as 'blank', cannot read the aria-label

I think it is better to keep the rule. and need to more research the screen reader behaviors to <svg>

@ymrl ymrl changed the title Remove svg-skip rule Warn <svg> may be skipped only when it is named but any role is given Aug 31, 2025
@ymrl
Copy link
Owner Author

ymrl commented Aug 31, 2025

Changed <svg> warning rule:

  • no name and no role: No accessible name
  • has name and no role: May be skipped

@ymrl ymrl merged commit 129852e into main Aug 31, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants