BUTTON wraps IMG with aria-labelledby Screen reader compatibility

Last updated: September 5, 2016

Expected Result: works in a screen reader

Actual Result: causes problems in 18 screen reader / browser combinations

WCAG Technique: ARIA10

Code used for this test:


        <button><img src='1234.png' aria-labelledby='button_img_aria_labelledby'></button>
        <span id='button_img_aria_labelledby'>This is aria labelled by</span>
    

Change History

Last updated: September 5, 2016

Screen readerBrowserModeNotesWhat the user hears
OK NVDA 2016.2FF48 Reading Speak Button graphic, this is an aria labelled by, this is an aria labelled by
OK NVDA 2016.2FF48 Tabbing Speak This is an aria labelled by, graphic button.
OK NVDA 2016.2IE11 Reading Speak Button, this is an aria labelled by
Fail NVDA 2016.2IE11 TabbingNothing indicates button function Speak Button
OK NVDA 2015.2FF40 Reading Speak Button graphic, this is an aria labelled by, this is an aria labelled by
OK NVDA 2015.2FF40 Tabbing Speak This is an aria labelled by, graphic button.
OK NVDA 2015.2IE11 Reading Speak Button, this is an aria labelled by
Fail NVDA 2015.2IE11 TabbingNothing indicates button function Speak Button
OK NVDA 2014.1FF28 Reading Speak Button graphic, this is an aria labelled by, this is an aria labelled by
OK NVDA 2014.1FF28 Tabbing Speak This is an aria labelled by, graphic button.
OK NVDA 2014.1IE11 Reading Speak Button, this is an aria labelled by
Fail NVDA 2014.1IE11 TabbingNothing indicates button function Speak Button
Fail JAWS 17.0.2619FF48 ReadingReads "unlabeled one button" without saying what button does. Speak Unlabeled one button
Fail JAWS 17.0.2619FF48 TabbingReads "unlabeled one button" without saying what button does. Speak Tab, unlabeled one button
OK JAWS 17.0.2619IE11 Reading Speak This is aria labelled by, button graphic
OK JAWS 17.0.2619IE11 Tabbing Speak This is aria labelled by, button
Fail JAWS 16.0.4350FF40 ReadingReads "unlabeled one button" without saying what button does. Speak Unlabeled one button
Fail JAWS 16.0.4350FF40 TabbingReads "unlabeled one button" without saying what button does. Speak Tab, unlabeled one button
OK JAWS 16.0.4350IE11 Reading Speak This is aria labelled by, button graphic
OK JAWS 16.0.4350IE11 Tabbing Speak This is aria labelled by, button
Fail JAWS 15.0.9023FF29 ReadingReads "unlabeled one button" without saying what button does. Speak Unlabeled one button
Fail JAWS 15.0.9023FF29 TabbingReads "unlabeled one button" without saying what button does. Speak Unlabeled one button
OK JAWS 15.0.9023IE11 Reading Speak This is aria labelled by, button graphic
OK JAWS 15.0.9023IE11 Tabbing Speak This is aria labelled by, button
Fail JAWS 14.0.9002FF29 ReadingReads "unlabeled one button" without saying what button does. Speak Unlabeled one button
Fail JAWS 14.0.9002FF29 TabbingReads "unlabeled one button" without saying what button does. Speak Unlabeled one button
OK JAWS 14.0.9002IE11 Reading Speak This is aria labelled by, button graphic
OK JAWS 14.0.9002IE11 Tabbing Speak This is aria labelled by, button
Fail JAWS 13.0.852FF29 ReadingReads "unlabeled one button" without saying what button does. Speak Unlabeled one button
Fail JAWS 13.0.852FF29 TabbingReads "unlabeled one button" without saying what button does. Speak Unlabeled one button
Fail JAWS 13.0.852IE11 ReadingIgnores img aria-labelledby, and reads "unlabeled zero button" without saying what button does. Speak Unlabeled zero button
Fail JAWS 13.0.852IE11 TabbingIgnores img aria-labelledby, and reads "unlabeled zero button" without saying what button does. Speak Unlabeled zero button
OK WindowEyes 9.2IE11 Reading Speak This is aria labelled by, button
OK WindowEyes 9.2IE11 Tabbing Speak This is aria labelled by, button
Fail WindowEyes 8.4IE11 ReadingReads "button" without saying what button does. Speak Button
OK WindowEyes 8.4IE11 Tabbing Speak This is aria labelled by, button
OK VoiceOver OSX 10.11Safari 9.1.2 Reading Speak This is aria labelled by, button
OK VoiceOver OSX 10.11Safari 9.1.2 Tabbing Speak This is aria labelled by, button
OK VoiceOver OSX 10.10Safari 8.0.6 Reading Speak This is aria labelled by, button
OK VoiceOver OSX 10.10Safari 8.0.6 Tabbing Speak This is aria labelled by, button
OK VoiceOver OSX 10.9Safari 7.0.3 Reading Speak This is aria labelled by, button
OK VoiceOver OSX 10.9Safari 7.0.3 Tabbing Speak This is aria labelled by, button
OK VoiceOver iOS 9.1Safari iOS 9.1Touch Speak This is aria labelled by, button
OK VoiceOver iOS 8.4Safari iOS 8.4Touch Speak This is aria labelled by, button
OK VoiceOver iOS 7.1Safari iOS 7.1Touch Speak This is aria labelled by, button
OK Dolphin SR 15.05IE11 Reading Speak Button, this is aria labelled by
OK Dolphin SR 15.05IE11 Tabbing Speak Button, this is aria labelled by
Fail SaToGo 3.4.96.0IE11 ReadingReads "button button" without saying what button does. Speak Button, button
Fail SaToGo 3.4.96.0IE11 TabbingReads "button" without saying what button does. Speak Button

SortSite rules: AccWcag1-1.1.17

Test notes

The threshold for inclusion in these results is 5% usage in the most recent WebAIM screen reader survey. Chrome and Android still fall below the 5% threshold.

All tests were carried out with screen reader factory settings. JAWS in particular has a wide variety of settings controlling exactly what gets spoken.

Screen readers allow users to interact in different modes, and can produce very different results in each mode. The modes used in these tests are:

In the «What the user hears» column: