See the Overview of WCAG 2.0 Documents for an introduction to Web Content Accessibility Guidelines (WCAG) 2.0 and supporting documents.
This Quick Reference is based on the May-November 2007 WCAG 2.0 draft. It lists all of the requirements (called "success criteria") in WCAG 2.0, along with techniques to meet the requirements. You can customize this Quick Reference to list only the information that you are interested in.
To use the Quick Reference:
Note that all techniques are informative. The "sufficient techniques" listed below are considered sufficient by the WCAG Working Group to meet the success criteria. However, it is not necessary to use these particular techniques. If techniques are used other than those listed by the Working Group, then some other method for establishing the technique's ability to meet the success criteria would be needed. In addition to the 'sufficient techniques', there are also advisory techniques that go beyond WCAG 2.0's requirements. Even content that completely conforms to WCAG will not be fully accessible to every person with a disability, especially people with language, learning, and cognitive disabilities, or multiple severe disabilities. Anyone can submit new techniques to the Working Group at any time. Please see Important New Terms Used in WCAG 2.0 for more information about sufficient techniques and advisory techniques.
Controls, Input: If it is a control or accepts user input, then it has a name that describes its purpose. (See also Guideline 4.1.)
Media, Test, Sensory: If it is (1) synchronized media, (2) live audio-only or live video-only content, (3) a test or exercise that must be presented in non-text format, (4) primarily intended to create a specific sensory experience, then text alternatives at least provide descriptive identification of the non-text content , or (5) a media alternative to text that is clearly labeled as such . (For synchronized media, see also Guideline 1.2.)
Note: Prerecorded audio-only and video-only files would be covered under Success Criterion 1.1.1, which requires text alternatives that present equivalent information.
CAPTCHA: If it is to confirm that content is being accessed by a person rather than a computer, then text alternatives that identify and describe the purpose of the non-text content are provided, and alternative forms of CAPTCHA using output modes for different types of sensory perception are provided to accommodate different disabilities.
Decoration, Formatting, Invisible: If it is pure decoration, or used only for visual formatting, or if it is not presented to users, then it is implemented in a way that it can be ignored by assistive technology.
G94: Providing short text alternative for non-text content that serves the same purpose and presents the same information as the non-text content using a short text alternative technique listed below
G95: Providing short text alternatives that provide a brief description of the non-text content using a short text alternative technique listed below AND one of the following techniques for long description:
G92: Providing long description for non-text content that serves the same purpose and presents the same information using a long text alternative technique listed below
G82: Providing a text alternative that identifies the purpose of the non-text content using a short text alternative technique listed below
Using HTML form controls and links (future link)
H44: Using label elements to associate text labels with form controls (HTML)
H65: Using the title attribute to identify form controls when the label element cannot be used (HTML)
Using (X)HTML according to spec (future link)
Providing a descriptive label using a short text alternative technique listed below
G68: Providing a descriptive label that describes the purpose of live audio-only and live video-only content using a short text alternative technique listed below
G100: Providing the accepted name or a descriptive name of the non-text content using a short text alternative technique listed below
G143: Providing a text alternative that describes the purpose of the CAPTCHA AND G144: Ensuring that the Web Page contains another CAPTCHA serving the same purpose using a different modality
Implementing or marking the non-text content so that it will be ignored by assistive technology using one of the technology-specific techniques listed below
H36: Using alt attributes on images used as submit buttons (HTML)
H2: Combining adjacent image and text links for the same resource (HTML)
H24: Providing text alternatives for the area elements of image maps (HTML)
Providing text alternatives for strings where look-alike glyphs are used in place of letters (e.g. leetspeak) (future link)
Providing text alternatives for ASCII art (future link)
H45: Using longdesc (HTML)
Identifying informative non-text content (future link)
Keeping short descriptions short (future link)
Describing images that include text (future link)
Providing a longer description of the non-text content where only a descriptive label is required using a technology-specific technique (for an accessibility-supported content technology) for long description listed above (future link)
Providing different sizes for non-text content when it cannot have an equivalent accessible alternative (future link)
Using server-side scripts to resize images of text (future link)
Linking to textual information that provides comparable information (e.g. for a traffic Webcam, a municipality could provide a link to the text traffic report.) (future link)
Providing a transcript of a live audio only presentation after the fact (future link)
Providing more than two modalities of CAPTCHAs (future link)
Providing access to a human customer service representative who can bypass CAPTCHA (future link)
Not requiring CAPTCHAs for authorized users (future link)
Writing for browsers that do not support frame
Providing alternative content for iframe
H27: Providing text and non-text alternatives for object (HTML)
Not using long descriptions for iframe
Providing redundant text links for client-side image maps (future link)
Using CSS margin and padding rules instead of spacer images (future link)
Using CSS background, :before or :after rules for decorative images instead of img elements (future link)
Displaying empty table cells (future link)
Using the ARIA presentation role to indicate elements are purely presentational (future link)
Using metadata to associate text transcriptions with a video (future link)
Using metadata to associate text transcriptions with audio-only content (future link)
EXAMPLE: Providing, in metadata, URL(s) that points to an audio description and a text transcript of a video.
EXAMPLE: Providing, in metadata, URL(s) that point to several text transcripts (English, French, Dutch) of an audio file.
Providing a viewport to a live text service which is being created by a trained stenographer who transcribes the spoken audio with minimal errors (future link)
Providing a link to a text transcript of a prepared statement or script if the script is followed (future link)
G150: Providing text alternatives for live audio-only content
Using metadata to associate text transcriptions with audio-only content (future link)
EXAMPLE: Providing, in metadata, URL(s) that point to several text transcripts (English, French, Dutch) of an audio file.
G87: Providing closed captions using any readily available media format that has a video player that supports closed captioning
G87: Providing closed captions using any of the technology-specific techniques below
Providing a note saying "No sound is used in this clip" for video-only clips (future link)
Using SMIL 1.0 to provide captions for all languages for which there are audio tracks (future link)
Using SMIL 2.0 to provide captions for all languages for which there are audio tracks (future link)
Note: For 1.2.2, 1.2.4, and 1.2.7, if all of the information in the video track is already provided in the audio track, no audio description is necessary.
G69: Providing a full synchronized media text alternative including any interaction
G78: Providing a sound track that includes audio description as the primary sound track
G78: Providing a sound track that includes audio description AND associating it with the synchronized media content using one of the following techniques:
Providing audio description in its own sound track (future link) AND merging the description track with the original soundtrack of the synchronized media content at runtime using one of the following techniques
Using SMIL 1.0 to merge a description track with sound track (future link)
Using SMIL 2.0 to merge a description track with sound track (future link)
Providing audio description in multiple languages in SMIL 1.0 (future link)
Providing audio description in multiple languages in SMIL 2.0 (future link)
Note: If synchronized media is completely computer generated, it is not live and is subject to the requirements for prerecorded synchronized media in WCAG 2.0.
G9: Creating captions for live synchronized media AND G93: Providing open (always visible) captions
G9: Creating captions for live synchronized media AND G87: Providing closed captions using any readily available media format that has a video player that supports closed captioning
G9: Creating captions for live synchronized media AND G87: Providing closed captions using one of the following techniques:
Note: Captions may be generated using real-time text translation service.
G78: Providing a sound track that includes audio description as the primary sound track
G78: Providing a sound track that includes audio description AND associating it with the synchronized media content using one of the following techniques:
Providing audio description in its own sound track (future link) AND merging the description track with the original soundtrack of the synchronized media content at runtime using one of the following techniques
Using SMIL 1.0 to merge a description track with sound track (future link)
Using SMIL 2.0 to merge a description track with sound track (future link)
Providing audio description in multiple languages in SMIL 1.0 (future link)
Providing audio description in multiple languages in SMIL 2.0 (future link)
Providing audio description for live synchronized media (future link)
G54: Including a sign language interpreter in the video stream
Providing a new page that has the video with the sign language interpretation of the audio track (future link)
G81: Providing a synchronized video of the sign language interpreter that can be displayed in a different viewport or overlaid on the image by the player using one of the following techniques
Using metadata to associate sign language alternatives of a video to enable choice of sign language (future link)
EXAMPLE: Providing, in metadata, URL(s) that point to several English sign language translations (ASL, SASL, BSL, Auslan, ISL, NZSL) of a web page.
Providing a second version of the movie with extended audio descriptions during halted video segments (future link)
G8: Creating an extended audio description for the synchronized media content using one of the following techniques
Adding extended audio description in multiple languages in SMIL 1.0 (future link)
Adding extended audio description in multiple languages in SMIL 2.0 (future link)
G69: Providing a full synchronized media text alternative including any interaction using one of the following techniques
Linking to the full text alternative for synchronized media including any interaction using one of the following techniques
Providing a corrected script (future link)
Adding detail to audio description (future link)
G115: Using semantic elements to mark up structure AND H49: Using semantic markup to mark emphasized or special text (HTML)
G117: Using text to convey information that is conveyed by variations in presentation of text
Separating information and structure from presentation to enable modification of presentation without altering content (future link)
Making information and relationships conveyed through presentation programmatically determinable using the following techniques:
H51: Using table markup to present tabular information (HTML)
H39: Using caption elements to associate data table captions with data tables (HTML)
H73: Using the summary attribute of the table element to give an overview of data tables (HTML)
H63: Using the scope attribute to associate header cells and data cells in data tables (HTML)
H43: Using id and headers attributes to associate data cells with header cells in data tables (HTML)
H44: Using label elements to associate text labels with form controls (HTML)
H65: Using the title attribute to identify form controls when the label element cannot be used (HTML)
H71: Providing a description for groups of form controls using fieldset and legend elements (HTML)
Using OPTGROUP to group OPTION elements inside a SELECT (future link)
Grouping form controls with FIELDSET and LEGEND (future link)
SCR21: Using functions of the Document Object Model (DOM) to add content to a page (Scripting)
G117: Using text to convey information that is conveyed by variations in presentation of text
Making information and relationships conveyed through presentation programmatically determinable or available in text using the following techniques:
T1: Using standard text formatting conventions for paragraphs (TXT)
T2: Using standard text formatting conventions for lists (TXT)
T3: Using standard text formatting conventions for headings (TXT)
Presenting tabular information in plain text (future link)
Using CSS styles to change or enhance the presentation of structure (future link)
Using CSS rather than tables for page layout (future link)
Positioning labels to maximize predictability of relationships
Providing labels for all form controls that do not have implicit labels (future link)
G57: Ordering the content in a meaningful sequence for all the content in the Web page
Marking sequences in the content as meaningful using one of the following techniques AND G57: Ordering the content in a meaningful sequence for those sequences
Using left-justified text for languages that are written left to right and right-justified text for languages that are written right-to-left (future link)
Using appropriate justification for languages that are written right-to-left (future link)
Providing a link to linearized rendering (future link)
Providing a style switcher between style sheets that affect presentation order (future link)
Using an image with a text alternative for graphical symbols instead of a Unicode font glyph with the desired graphical appearance but different meaning (future link)
Note 1: This success criterion addresses color perception specifically. Other forms of perception are covered in Guideline 1.3.
Note 2: Programmatic access to color and other visual presentation coding is covered in Guideline 1.3.
G14: Ensuring that information conveyed by color differences is also available in text
Ensuring that when text color differences are used to convey information, the text style is visually differentiated without color differences (future link)
Conveying all information in text that is conveyed by color differences (future link)
Conveying information redundantly using color (future link)
C16: Changing the background color or border of the element with focus (CSS)
Note: Since any content that does not meet this success criterion can interfere with a user's ability to use the whole page, all content on the Web page (whether it is used to meet other success criteria or not) must meet this success criterion. See Conformance Requirement 5: Non-Interference.
G60: Playing a sound that turns off automatically within three seconds
Playing sounds only on user request (future link)
Providing a control near the top of the Web page that turns off sounds that play automatically (future link)
Providing a user interface control to pause or stop synchronized media (future link)
Providing a sitewide preference to turn off audio in addition to providing a control near the top of the Web page that turns off sounds that play automatically (future link)
Large Print: Large-scale text and large-scale images of text have a contrast ratio of at least 3:1;
Incidental: Text or images of text that are part of an inactive user interface component, that are pure decoration, that are incidental text in an image, or that are not visible to anyone, have no minimum contrast requirement.
Note: Success Criteria 1.4.3 and 1.4.6 can be met via a contrast control available on or from the page.
Using a higher contrast value for text that is over a patterned background (future link)
Using a light pastel background rather than a white background behind black text (future link)
Using Unicode text and style sheets instead of images of text (future link)
Using a higher contrast values for lines in diagrams (future link)
Using greater contrast level for red-black text/background combinations
Using colors that are composed predominantly of mid spectral components for the light and spectral extremes (blue and red wavelengths) for the dark
Using a light pastel background rather than a white background behind black text to create sufficient but not extreme contrast (future link)
Making icons using simple line drawings that meet the contrast provisions for text (future link)
Providing sufficient color contrast in graphs and charts (future link)
G142: Using a technology that has commonly-available user agents that support zoom
Ensuring that text containers resize when the text resizes AND using measurements that are relative to other measurements in the content by using one or more of the following techniques:
Specifying the size of objects in terms of the font size (future link)
Techniques for relative measurements
Techniques for text container resizing
Calculating size and position in a way that scales with text size (future link) (Scripting)
Providing controls on the Web page that incrementally change the size of the text (future link)
Providing options within the content to switch between layouts that use a variety of font sizes (future link)
Providing large fonts by default (future link)
Using page-percent for container sizes (future link)
Avoiding scaling font sizes smaller than the user-agent default (future link)
Note: The author won't actually know the font size, but should avoid percentage scaling that results in less than 100%
Avoiding justified text (future link)
Providing sufficient inter-line and inter-column spacing (future link)
Providing different sizes for non-text content when it cannot have an equivalent accessible alternative (future link)
Avoiding the use of text in raster images (future link)
Using server-side scripts to resize images of text (future link)
Ensuring that text in raster images is at least 18pt (future link)
Scaling text down to 50% (future link)
Customizable: The image of text can be visuallycustomized to the user's requirements;
Essential: A particular presentation of text is essential to the information being conveyed.
Note: Logotypes (text that is part of a logo or brand name) are considered essential.
Using CSS to control visual presentation of text (future link)
Providing controls on the Web page that change the visual presentation of text (future link)
G140: Separating information and structure from presentation so that Web pages can be presented different ways without losing information OR Separating information and structure from presentation to enable modification of presentation without altering content (future link)
Identifying informative non-text content (future link)
C8: Using CSS letter-spacing to control spacing within a word (CSS)
Avoid applying text styling to text characters within a word (future link)
Changing line height (future link)
Specifying the font family (future link)
Changing letter-spacing (future link)
Aligning text (future link)
Changing the case of text (future link)
Indenting paragraphs (future link)
Layering text over images (future link)
Italicizing text (future link)
Increasing font weight of text (future link)
Styling the first line of a block of text (future link)
Styling the first letter of a block of text (future link)
Adding a drop-shadow to text (future link)
Large Print: Large-scale text and large-scale images of text have a contrast ratio of at least 5:1;
Incidental: Text or images of text that are part of an inactive user interface component, that are pure decoration, that are incidental text in an image, or that are not visible to anyone, have no minimum contrast requirement.
Note: Success Criteria 1.4.3 and 1.4.6 can be met via a contrast control available on or from the page.
Using a higher contrast value for text that is over a patterned background (future link)
Using Unicode text and style sheets instead of images of text (future link)
Using a light pastel background rather than a white background behind black text (future link)
Using a higher contrast values for lines in diagrams (future link)
Using greater contrast level for red-black text/background combinations
Using colors that are composed predominantly of mid spectral components for the light and spectral extremes (blue and red wavelengths) for the dark
Using a light pastel background rather than a white background behind black text to create sufficient but not extreme contrast (future link)
Making icons using simple line drawings that meet the contrast provisions for text (future link)
Providing sufficient color contrast in graphs and charts (future link)
Note: Background sound that meets this requirement will be approximately one quarter as loud as the foreground speech content.
Not including audio content (future link)
Providing a way for users to adjust auditory levels of foreground and background sound independently (future link)
foreground and background colors can be selected by the user
width is no more than 80 characters
text is not aligned on both the left and the right
line spacing is at least space-and-a-half within paragraphs, and paragraph spacing is larger than line spacing
text is resized without assistive technology up to 200 percent in a way that does not require the user to scroll horizontally to read a line of text
Techniques to ensure foreground and background colors can be selected by the user
Specifying foreground and background colors in CSS (future link) OR
Providing a color selection tool that allows a pastel background (future link) OR
Providing a multi color selection tool on the page for foreground and background colors (JavaScript, Future Link) OR
Using a technology that has commonly-available user agents that can change the foreground and background of blocks of text (General, future link)
Techniques to ensure width is no more than 80 characters
Not interfering with the user agent's reflow of text as the viewing window is narrowed (General, Future Link) OR
Using ems to set the column width
Techniques to ensure text is not aligned on both the left and the right
Specifying alignment in CSS (CSS) (also allows for tools that use custom stylesheets) OR
Providing a feature to remove full justification of text (future link) OR
Aligning text on only one side (according to the text-direction of the language of the content) (General, future link)
Techniques to ensure line spacing is at least space-and-a-half within paragraphs, and paragraph spacing is larger than line spacing
Providing a button on the page to increase line spaces and paragraph spaces. (HTML, CSS, future link) OR
Specifying line spacing in CSS or not specifying any line spacing (HTML, CSS, future link)
Techniques to ensure text can be resized without assistive technology up to 200 percent in a way that does not require the user to scroll horizontally to read a line of text
Not interfering with the browser's reflow of text as the viewing window is narrowed (General, Future Link) OR
G146: Using liquid layout AND using measurements that are relative to other measurements in the content by using one or more of the following techniques:
C12: Using percent for font sizes (CSS) OR
C13: Using named font sizes (CSS) OR
C14: Using em units for font sizes (CSS) OR
Using page-percent for container sizes (future link) OR
Calculating size and position in a way that scales with text size (Scripting, future link) OR
Providing options within the content to switch between layouts that use a variety of font sizes (future link)
Using a hover effect to highlight a paragraph, list items, or table cells (HTML, CSS) (future link)
Presenting text in sans serif font or providing a mechanism to achieve this (CSS) (future link)
Using vertical (bulleted or numbered) lists rather than inline lists (future link)
Using upper and lower case according to the spelling conventions of the text language (future link)
Providing large fonts by default (future link)
Avoiding the use of text in raster images (future link)
Avoiding scaling font sizes smaller than the user-agent default (future link)
Providing sufficient inter-column spacing (future link)
Avoiding centrally aligned text (future link)
Avoiding chunks of italic text (future link)
Avoiding overuse of different styles on individual pages and in sites (future link)
Making links visually distinct (future link)
Providing expandable bullets (future link)
Show/hide bullet points (future link)
Putting an em-space or two spaces after sentences (future link)
Note: Logotypes (text that is part of a logo or brand name) are considered essential.
Using CSS to control visual presentation of text (future link)
Providing controls on the Web page that change the visual presentation of text (future link)
G140: Separating information and structure from presentation so that Web pages can be presented different ways without losing information OR Separating information and structure from presentation to enable modification of presentation without altering content (future link)
Using server-side scripts to resize images of text (future link)
C8: Using CSS letter-spacing to control spacing within a word (CSS)
Avoid applying text styling to text characters within a word (future link)
Changing line height (future link)
Specifying the font family (future link)
Changing letter-spacing (future link)
Aligning text (future link)
Changing the case of text (future link)
Indenting paragraphs (future link)
Layering text over images (future link)
Italicizing text (future link)
Increasing font weight of text (future link)
Styling the first line of a block of text (future link)
Styling the first letter of a block of text (future link)
Adding a drop-shadow to text (future link)
Note 1: This exception relates to the underlying function, not the input technique. For example, if using handwriting to enter text, the input technique (handwriting) requires path dependent input but the underlying function (text input) does not.
Note 2: This does not forbid and should not discourage providing mouse input or other input methods in addition to keyboard operation.
Ensuring keyboard control by using one of the following techniques.
Using HTML form controls and links (future link)
G90: Providing keyboard-triggered event handlers using one of the following techniques:
SCR20: Using both keyboard and other device-specific functions (Scripting)
Making JavaScript actions keyboard accessible (future link)
Creating device-independent image effects (future link)
Providing keyboard access to important links and form controls (future link)
Using unique letter combinations to begin each item of a list (future link)
Choosing the most abstract event handler (future link) (Scripting)
Using the onactivate event (future link) (Scripting)
Avoiding use of common user-agent keyboard commands for other purposes (future link)
Note: Since any content that does not meet this success criterion can interfere with a user's ability to use the whole page, all content on the Web page (whether it is used to meet other success criteria or not) must meet this success criterion. See Conformance Requirement 5: Non-Interference.
No additional techniques exist for this Success Criterion. Follow techniques for Success Criterion 2.1.1 . If that is not possible because there is a requirement for analog, time-dependent input, then it is not possible to meet this Level AAA Success Criterion.
Turn off: the user is allowed to turn off the time limit before encountering it; or
Adjust: the user is allowed to adjust the time limit before encountering it over a wide range that is at least ten times the length of the default setting; or
Extend: the user is warned before time expires and given at least 20 seconds to extend the time limit with a simple action (for example, "press the space bar "), and the user is allowed to extend the time limit at least ten times; or
Real-time Exception: the time limit is a required part of a real-time event (for example, an auction), and no alternative to the time limit is possible; or
Essential Exception: the time limit cannot be extended without invalidating the activity; or
20 Hour Exception: the time limit is longer than 20 hours.
Note: This success criterion acts to ensure that changes in content or context as a result of a time limit will not occur unexpectedly, preventing users from completing tasks. While exceptions to success criterion 2.2.1 where timing is essential exist, guideline 2.2 in general limits changes in content for no reason. This success criterion should be considered in conjunction with Success Criterion 3.2.1 which puts limits on changes of content or context as a result of user action.
Providing a way for the user to turn the time limit off (future link)
Providing the user with a means to set the time limit to 10 times the default time limit (future link)
SCR16: Providing a script that warns the user a time limit is about to expire (Scripting) AND SCR1: Allowing the user to extend the default time limit (Scripting)
Using a script to poll the server and notify a user if a time limit is present (future link) (Scripting)
Note 1: For requirements related to flickering or flashing content, refer to Guideline 2.3.
Note 2: Since any content that does not meet this success criterion can interfere with a user's ability to use the whole page, all content on the Web page (whether it is used to meet other success criteria or not) must meet this success criterion. See Conformance Requirement 5: Non-Interference.
Note 3: Content that is updated from a process, real-time or remote stream is not required to preserve or present information that is generated or received between the initiation of the pause and resuming presentation, as this may not be technically possible, and in many situations could be misleading to do so.
G4: Allowing the content to be paused and restarted from where it was stopped
Using script to scroll content, and providing a mechanism to pause it (future link)
Allowing purely decorative content to be stopped (future link)
Using a technology to include blinking content that can be turned off via the user agent (future link)
Using a control in the Web page that stops blinking content (future link) using one of the following techniques:
Setting animated gif images to stop blinking after n cycles (within 3 seconds) (future link)
Providing a link, button, or other mechanism that reloads the page without the blinking content (future link)
SCR22: Using scripts to control blinking and stop it in three seconds or less (Scripting)
Providing a mechanism to stop all content that blinks within a Web page (future link)
Providing the user with a means to stop moving content even if it stops automatically within 3 seconds (future link)
G75: Providing a mechanism to postpone any updating of content
Allowing users to request updates instead of automatically updating content (future link)
SCR14: Using scripts to make nonessential alerts optional (Scripting)