These features do not appear in text-only documents, but in documents that
contain structural features such as tables and frames, or embedded objects
(such as images). They are thus Optional Features that require slightly more
complex markup than used for text-only documents.
Features are optional;
tests are not optional when a feature does occur
Provide a text equivalent for every non-text element (e.g., via "alt",
"longdesc", or in element content). This includes: images, graphical
representations of text (including symbols), image map regions, animations
(e.g., animated GIFs), applets and programmatic objects, ASCII
art, frames, scripts, images used as list bullets, spacers, graphical
buttons, sounds (played with or without user interaction), stand-alone
audio files, audio tracks of video, and video.
Use relative rather than absolute units in markup language attribute
values and style sheet property values.
Until user agents allow users to control flickering, avoid causing the
screen to flicker.
Until user agents allow users to control blinking, avoid causing content
to blink (i.e., change presentation at a regular rate, such as turning
on and off).
Images and image maps
Ensure that foreground and background color combinations provide sufficient
contrast when viewed by someone having color deficits or when viewed on
a black and white screen.
When an appropriate markup language exists, use markup rather than images
to convey information.
Provide redundant text links for each active region of a server-side
Provide client-side image maps instead of server-side image maps except
where the regions cannot be defined with an available geometric shape.
Until user agents render text equivalents for client-side image map
links, provide redundant text links for each active region of a client-side
Supplement text with graphic or auditory presentations where they will
facilitate comprehension of the page.
Provide a means to skip over multi-line ASCII art.
For data tables, identify row and column headers.
For data tables that have two or more logical levels of row or column
headers, use markup to associate data cells and header cells.
Do not use tables for layout unless the table makes sense when linearized.
Otherwise, if the table does not make sense, provide an alternative equivalent
(which may be a linearized version).
If a table is used for layout, do not use any structural markup for
the purpose of visual formatting.
Provide summaries for tables.
Provide abbreviations for header labels.
Until user agents (including assistive technologies) render side-by-side
text correctly, provide a linear text alternative (on the current page
or some other) for all tables that lay out text in parallel,
Until user agents support explicit associations between labels and form
controls, for all form controls with implicitly associated labels, ensure
that the label is properly positioned.
Associate labels explicitly with their controls.
Until user agents handle empty controls correctly, include default,
place-holding characters in edit boxes and text areas.
Title each frame to facilitate frame identification and navigation.
Describe the purpose of frames and how frames relate to each other if
it is not obvious by frame titles alone.
Applets and scripts
Ensure that pages are usable when scripts, applets, or other programmatic
objects are turned off or not supported. If this is not possible, provide
equivalent information on an alternative accessible page.
For scripts and applets, ensure that event handlers are input device-independent.
Until user agents allow users to freeze moving content, avoid movement
Functional applets and scripts: Make programmatic elements such as scripts
and applets directly accessible or compatible with assistive technologies
Applets and scripts for other purposes: Make programmatic elements such
as scripts and applets directly accessible or compatible with assistive
Ensure that any element that has its own interface can be operated in
a device-independent manner.
For scripts, specify logical event handlers rather than device-dependent
Until user agents can automatically read aloud the text equivalent of
a visual track, provide an auditory description of the important information
of the visual track of a multimedia presentation.
For any time-based multimedia presentation (e.g., a movie or animation),
synchronize equivalent alternatives (e.g., captions or auditory descriptions
of the visual track) with the presentation.
Ensure that equivalents for dynamic content are updated when the dynamic
Ensure that dynamic content is accessible or provide an alternative
presentation or page.