standards-support
standards-support copied to clipboard
Expose superscript and subscript text
Summary
Subscript and superscript text is not exposed. An example:
- Go to https://cdpn.io/pen/debug/aGgBNZ
- Read the content using any means.
- Observe the sub- and super-script is not exposed in any way.
- Look for a JAWS setting to expose it.
- Find none.
Expected result
I expect to hear the sub- and super-script text as marked up by <sub> and <sup>.
Failing that, I expect there is at least a setting to allow JAWS to expose superscript and subscript text to users.
Actual result
The text was read without denoting if it is sub- or super-script.
In the Mixed example, the numbers are concatenated and <sup>14</sup><sub>6</sub> are announced as "one forty-six".
Example
- Debug pen: https://cdpn.io/pen/debug/aGgBNZ
- Editable pen: https://codepen.io/aardrian/pen/aGgBNZ
Example code that concatenates values:
<sup class="texttop">14</sup><sub>6</sub>C<sup class="texttop">2+</sup><sub>8</sub>
Additional Information
- NVDA has a setting (under Document Formatting) to announce sub- and super-script.
- As of the start of 2019 JAWS had no support for
<sup>nor<sup>(per https://freedomscientific.github.io/VFO-standards-support/html.html) so assuming that is still the case.
JAWS version and build number
- JAWS 2022.2202.20
Operating System and version
- Windows 10
- Windows 11
Browser and version:
- Chrome 105
- Firefox 105
Older JAWS versions (e.g. 15, 18 and 2019) still output the elements as superscript and subscript, but the current version unfortunately no longer does so
I recently had to do some research on this topic and a blind colleague pointed out that in JAWS 21 (not sure about 22) you have to edit a sound scheme to enable superscript and subscript announcements. It's buried deep down in the settings and nothing comes up when you search the JAWS documentation for the obvious key words. Here are the steps to get there from the JAWS docs:
- With JAWS running, press
Insert+F2, then pressSuntil Settings Center is selected, and pressEnter. - Press
Ctrl+Shift+Dto load the Default settings configuration. - Type “scheme” in the search field, and Tab to the list of choices.
- Down Arrow until “Active Speech and Sounds Scheme” is chosen. Pressing Space while this option is selected will cycle through the available schemes.
- Continue pressing Down Arrow until “Modify Schemes…” is chosen. Pressing Space here will bring up a list of schemes which can be modified. (It’s okay to choose this, so long as you don’t save any changes you make to pre-existing schemes.)
- When the list of modifiable schemes comes up, Tab to
Edit Selected Scheme, and press Enter. - Press
Ctrl+Tabuntil the Attributes Page in the multi-tab dialog is shown. Both subscript and superscript are available as configurable attributes in this list.
@jducrot I am using JAWS 2022 and I can get to the screen you describe. I made a new scheme to play a sound for sub- and super-script text but am having no luck with it. As in, the audio file I chose is not played when I encounter sub/super text.

I did not mean to make this into a help desk request. However, this does seem a bit buried.
There is a common use for these on the web, that is to reference footnotes. Without support for the superscript element, Jaws ends up communicating odd information. The following HTML has been found on multiple banking websites: Must be at least 18<sup1 to apply. ... The superscript reference points to a footnote. Jaws (tested in 2022) reads this as "must be 181 to apply". Given how frequent superscript references are on the web, Jaws should have super/subscript announcements as part of the verbosity setting for the browser, ideally they should be announced always in beginner verbosity mode.
No matter what I set under Active Speech and Sounds Scheme: JAWS does not output sub and sup or the ARIA roles subscript and superscript in any way.
JAWS version and build number
JAWS 2023.2307.37
Operating System and version
Windows 10
Browser and version:
Chrome 116.0.5845.142
Still an issue in JAWS 2024. I have confirmed that the audio files I have chosen in my custom scheme are real audio files and play real audio.