VoiceOver HTML table issue: VO announces content out of order when span element used in th

Wondering if anyone has come across this issue.

When a <th> element has text in a <span> element in an HTML table, VoiceOver will announce the text in the second <span> element first, even if it comes after the text that visually (and programmatically) comes before it. This also happens with nested span elements. It does not happen with <td> cells.

For example: <th>First text <span>Second text</span></th>. VoiceOver will announce (alongside all the native table announcements): "Second text, first text."

Replicable on:

  • Safari/iOS 16.6 with VoiceOver
  • Edge 113.0.17 with VoiceOver

Please see you can replicate here: https://codepen.io/ayesha-2303/full/eYQqbXX

Is this expected functionality or is it a bug? How can I raise it if it is a bug?

Seems like a bug. Will you file it at bugs.webkit.org? Thanks for including the CodePen.

VoiceOver HTML table issue: VO announces content out of order when span element used in th
 
 
Q