Using aria-labelledby to provide a text alternative for non-text content
Status
- 1 Nov 2012: TF FtF says this technique needs additional work.
- 1 Nov 2012: Ready for TF review
- Surveyed by WG 10 Jan 2013
- Reviewed by TF in Techniques Task Force: ARIA techniques for 8 Aug 2013
- approved by WG Sept 10, 2013 (http://www.w3.org/2013/09/10-wai-wcag-minutes.html)
- added to XML by AWK 2014/1/2
User Agent Notes [To be published separately]
- Jaws 13+ support Example 1 with IE and FF
- NVDA 2012.3 supports both Example 1 and Example 2 with FF
Applicability
This technique applies to HTML with WAI-ARIA.
This technique relates to:
Description
The purpose of this technique is to provide a short description for an element that can be read by assistive technologies (AT) by using the aria-labelledby
attribute. The aria-labelledby
attribute associates an element with text that is visible elsewhere on the page by using an ID reference value that matches the ID attribute of the labeling element. Assistive technology such as screen readers use the text of the element identified by the value of the aria-labelledby
attribute as the text alternative for the element with the attribute.
Note: When using aria-labelledby
attribute on an img
element, the absence of an alt
attribute will cause validation failures for HTML 4 and earlier and XHTML. If alt
is provided, it must contain the same text as the aria-labelledby
target. Do not use alt=""
, which would cause some assistive techology to ignore the image completely.
Examples
Example 1
This example shows how to use the aria-labelledby
attribute to provide a short text description for an image, using a piece of text that is visible on the page.
<img src="sunflowers.jpg" aria-labelledby="flower_id"> ... <span id="flower_id">Van Gogh's oil painting of sunflowers</span> hangs in Amsterdam's Van Gogh museum.
Example 2
This example shows how to use the aria-labelledby
attribute to provide a short text description for a read-only complex graphic of an star rating pattern; the graphic is composed of several image elements. The text alternative for the graphic is the label, visible on the page beneath the star pattern.
<div role="img" aria-labelledby="star_id"> <img src="fullstar.png" alt=""/> <img src="fullstar.png" alt=""/> <img src="fullstar.png" alt=""/> <img src="fullstar.png" alt=""/> <img src="emptystar.png" alt=""/> </div> <div id="star_id">4 of 5</div>
Resources
- WAI-ARIA 1.0 Authoring Practices
- HTML to Platform Accessibility APIs Implementation Guide: Accessible Name and Description Calculation
Related Techniques
Tests
Procedure
- Examine each element where the
aria-labelledby
attribute is present. - Check whether the value of the
aria-labelledby
attribute is the id of an element on the web page - Determine that the text of the element identified by the
aria-labelledby
attribute accurately labels the element, provides a description of its purpose, or provides equivalent information.
Expected results
- Checks #2 and #3 are true.