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)
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)
Providing options to continue without loss of data using one of the following techniques:
G105: Saving data so that it can be used after a user re-authenticates
Encoding user data as hidden data in re-authorization page (future link)
Note: Refer to Techniques for Addressing Success Criterion 2.2.1 for techniques related to providing notifications about time limits.
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.
Using all possible 341 x 256 pixel rectangles on 1024 x 768 pixel display to represent a 10 degree field of view at normal viewing distance AND G15: Ensuring that content does not violate the general flash threshold or red flash threshold
Note: There is a tool that is available to carry out this test.
G19: Ensuring that no component of the content flashes more than three times in any 1-second period
Using actual viewing distance to calculate a 10 degree field of view in pixels AND G15: Ensuring that content does not violate the general flash threshold or red flash threshold
Note: There is a tool that is available to carry out this test.
G19: Ensuring that no component of the content flashes more than three times in any 1-second period
Reducing contrast for any flashing content (future link)
Avoiding fully saturated reds for any flashing content (future link)
Reducing the number of flashes even if they do not violate thresholds (future link)
Providing a mechanism to suppress any flashing content before it begins (future link)
Slowing down live material to avoid rapid flashes (as in flashbulbs) (future link)
Freezing the image momentarily if 3 flashes within one second are detected (future link)
Dropping the contrast ratio if 3 flashes within one second are detected (future link)
Reducing contrast for any flashing content (future link)
Avoiding fully saturated reds for any flashing content (future link)
Reducing the number of flashes even if they don't violate thresholds (future link)
Slowing down live material to avoid rapid flashes (as in flashbulbs) (future link)
Freezing the image momentarily if 3 flashes within one second are detected (future link)
Dropping the contrast ratio if 3 flashes within one second are detected (future link)
Creating links to skip blocks of repeated material using one of the following techniques:
G1: Adding a link at the top of each page that goes directly to the main content area
G123: Adding a link at the beginning of a block of repeated content to go to the end of the block
G124: Adding links at the top of the page to each area of the content
Providing a link to "jump to top of page" if the repeated material is at the bottom of the page
Grouping blocks of repeated material in a way that can be skipped, using one of the following techniques:
H69: Providing heading elements at the beginning of each section of content (HTML)
H70: Using frame elements to group blocks of repeated material (HTML) AND H64: Using the title attribute of the frame and iframe elements (HTML)
Using an expandable and collapsible menu (future link)
Providing keyboard access to important links and form controls (future link)
Providing skip links to enhance page navigation (future link)
Providing access keys (future link)
Using accessibility supported technologies which allow structured navigation by user agents and assistive technologies (future link)
G88: Providing descriptive titles for Web pages AND associating a title with a Web page using one of the following techniques:
G127: Identifying a Web page's relationship to a larger collection of Web pages using a technology-specific technique
Identifying the subject of the Web page (future link)
Providing a meaningful name for identifying frames (future link)
Using unique titles for Web pages (future link)
Providing a descriptive top-level page heading (future link)
Giving focus to elements in an order that follows sequences and relationships within the content using one of the following techniques:
H4: Creating a logical tab order through links, form controls, and objects (HTML)
Making the source order match the visual order (future link)
Changing a web page dynamically using one of the following techniques:
SCR26: Inserting dynamic content into the Document Object Model immediately following its trigger element (Scripting)
Creating custom dialogs in a device independent way (future link)
SCR27: Reordering page sections using the Document Object Model (Scripting)
Providing a highly visible highlighting mechanism for links or controls when they receive keyboard focus (future link)
Creating alternative presentation orders (future link)
Failure of SC 2.4.3 due to using menus or dialogs that are not adjacent to their trigger control in the sequential navigation order
G91: Providing link text that describes the purpose of a link
Allowing the user to choose short or long link text USING one of the technology specific techniques below:
Using HTML and page reloads to offer different link texts (future link)
Using JavaScript to change the link texts (future link)
Providing a supplemental description of the purpose of a link using one of the following techniques:
Identifying the purpose of a link using link text combined with programmatically determined link context using one of the following techniques:
Optimizing Web pages for the "link list" feature in assistive technology (future link)
Using two or more of the following techniques:
Providing a search engine to help users find content (future link)
Including information about presentation modes in tables of contents and concept maps (future link)
Note: Headings and labels must be programmatically determined, per success criterion 1.3.1 .
Using unique section headings in a Web Page (future link)
Starting section headings with unique information (future link)
G149: Using user interface components that are highlighted by the user agent when they receive focus
C15: Using CSS to change the presentation of a user interface component when it receives focus (CSS)
Using the default focus indicator for the platform so that high visibility default focus indicators will carry over (future link)
Using an author-supplied, highly visible focus indicator (future link)
Highlighting a link or control when the mouse hovers over it (future link)
Providing a highly visible highlighting mechanism for links or controls when they receive keyboard focus (future link)
Providing a link to the home page or main page (future link)
Providing an easy-to-read version of information about the organization of a set of Web pages (future link)
Providing a sign language version of information about the organization of a set of Web pages (future link)
Providing an easy-to-read summary at the beginning of each section of content (future link)
G91: Providing link text that describes the purpose of a link using one of the following techniques:
Allowing the user to choose short or long link text USING one of the technology specific techniques below:
Using HTML and page reloads to offer different link texts (future link)
Using JavaScript to change the link texts (future link)
Providing a supplemental description of the purpose of a link using one of the following techniques:
Using the 'live' property to mark live regions (future link) (ARIA)
Providing mechanisms to navigate to different sections of the content of a Web page (future link)
Identifying default human language(s) using one of the following techniques:
Specifying the default language in the HTTP header (future link)
using http or the Content-Language meta tag for metadata (future link)
Identifying changes in human languages using one of the following techniques:
Making text that is not in the default human language of the Web page visually distinct (future link)
Giving the names of any languages used in foreign passages or phrases (future link)
G101: Providing the definition of a word or phrase used in an unusual or restricted way for the first occurrence of the word or phrase in a Web page using one of the following techniques:
G101: Providing the definition of a word or phrase used in an unusual or restricted way for each occurrence of the word or phrase in a Web page using one of the following techniques:
Using a dictionary cascade (future link)
G101: Providing the definition of a word or phrase used in an unusual or restricted way for each occurrence of the word or phrase in a Web page using one of the following techniques:
Using the title attribute to provide explanations of words or phrases (future link)
Using markup and visual formatting to help users recognize words that have special meaning (future link)
Providing a voice-enabled dictionary search so that users who have difficulty typing or spelling can speak the word whose definition they need (future link)
Providing a sign language dictionary to help users who are deaf find the necessary definitions (future link)
Providing a mechanism for finding definitions for all words in text content (future link)
Providing a mechanism to determine the meaning of each word or phrase in text content (future link)
Avoiding unusual foreign words (future link)
G102: Providing the expansion or explanation of an abbreviation for the first occurrence of the abbreviation in a Web page using one of the following techniques:
G102: Providing the expansion or explanation of an abbreviation for all occurrences of the abbreviation in a Web page using one of the following techniques:
Using a dictionary cascade (future link)
H28: Providing definitions for abbreviations by using the abbr and acronym elements (HTML)
G102: Providing the expansion or explanation of an abbreviation for all occurrences of abbreviations in a Web page using one of the following techniques:
Using the title attribute to provide explanations of words or phrases (future link)
Using unique abbreviations in a Web page (future link)
Using visual formatting to help users recognize abbreviations (future link)
Providing access to a talking dictionary to support users who might have difficulty decoding written definitions (future link)
Providing a voice-enabled dictionary search so that users who have difficulty typing or spelling can speak the word whose definition they need (future link)
Making the text easier to read (future link)
Providing sign language versions of information, ideas, and processes that must be understood in order to use the content (future link)
Note: Different sites may address this success criterion in different ways. An audio version of the content may be helpful to some users. For some people who are deaf, a sign language version of the page may be easier to understand than a written language version since sign language may be their first language. Some sites may decide to do both or other combinations. No technique will help all users who have difficulty. So different techniques are provided as sufficient techniques here for authors trying to make their sites more accessible. Any numbered technique or combination above can be used by a particular site and it is considered sufficient by the Working Group.
Providing text for navigational and landing pages that requires reading ability that is less advanced than the lower secondary education level (future link)
Providing text for interior pages that requires reading ability at the lower secondary education level (future link)
Including content summaries in metadata (future link)
Using the clearest and simplest language appropriate for the content (future link)
Using the Dublin Core accessibility element to associate text content with text, graphical, or spoken supplements (future link)
Using RDF to associate supplements with primary content (future link)
Providing a clear representational image on the site's home page (future link)
Making metadata viewable by humans (future link)
Clearly marking, by use of text or icon, content which has been optimized for easy reading (future link)
Using sentences that contain no redundant words, that is, words that do not change the meaning of the sentence (future link)
Using sentences that contain no more than two conjunctions (future link)
Using sentences that are no longer then the typical accepted length for secondary education (Note: In English that is 25 words) (future link)
Using sentences that do not contain complex words or phrases that could be replaced with more commonly used words without changing the meaning of the sentence (future link)
Providing summaries for different sections of text (future link)
Using metadata to associate alternatives at different reading levels. (Metadata Technique)
Using the Dublin Core accessibility element to associate text content with text, graphical, or spoken supplements (future link)
Using the ISO AfA accessibility element to associate text content with text, graphical, or spoken supplements (future link)
Using the IMS accessibility element to associate text content with text, graphical, or spoken supplements (future link)
Making metadata viewable by humans (future link)
EXAMPLE: Providing, in metadata, URL(s) that point to a pre-primary-reading-level and a primary-reading-level text transcript of a new scientific discovery advanced-reading-level article.
G120: Providing the pronunciation immediately following the word
G62: Providing a glossary that includes pronunciation information for words that have a unique pronunciation in the content and have meaning that depends on pronunciation
Providing pronunciation information using a technology-specific technique below
H62: Using the ruby element (HTML) (XHTML 1.1)
Using standard diacritical marks that can be turned off (future link)
Providing pronunciations in a sound file, so that users can listen to the pronunciations of the word (future link)
Providing a mechanism for finding pronunciations for all foreign words in text content (future link)
Providing a mechanism to determine the pronunciations of each word or phrase in text content (future link)
Not causing persistent changes of state or value when a component receives focus, or providing an alternate means to reset any changes (future link)
G80: Providing a submit button to initiate a change of context using a technology-specific technique listed below
G13: Describing what will happen before a change to a form control is made
Using a button with a select element to perform an action (future link)
Hiding and showing content based on a select element change (future link)
Hiding and showing content based on a radio element change (future link)
Using templates to ensure consistency across multiple Web pages (future link)
Creating layout, positioning, layering, and alignment (future link)
Using consistent labels, names, and text alternatives for content that has the same functionality.
Note 1: Text alternatives that are "consistent" are not always "identical." For instance, you may have an graphical arrow at the bottom of a Web page that links to the next Web page. The text alternative may say "Go to page 4." Naturally, it would not be appropriate to repeat this exact text alternative on the next Web page. It would be more appropriate to say "Go to page 5". Although these text alternatives would not be identical, they would be consistent, and therefore would satisfy this success criterion.
Note 2: A single non-text-content-item may be used to serve different functions. In such cases, different text alternatives are necessary and should be used. Examples can be commonly found with the use of icons such as check marks, cross marks, and traffic signs. Their functions can be different depending on the context of the Web page. A check mark icon may function as "approved", "completed", or "included", to name a few, depending on the situation. Using "check mark" as text alternative across all Web pages does not help users understand the function of the icon. Different text alternatives can be used when the same non-text content serves multiple functions.
Ensuring that the text alternative conveys the function of the component and what will happen when the user activates it (future link)
Using the same non-text content for a given function whenever possible (future link)
G110: Using an instant client-side redirect using one of the following techniques:
Including pop-up windows using one of the following techniques:
Using the target attribute to open a new window (future link)
SCR24: Using script to open a new window on user request (Scripting)
Opening new windows by:
Using the target attribute instead of scripts (future link), indicating that the link may open in a new window, or
Providing normal hyperlinks without the target attribute (future link), because many user agents allow users to open links in another window or tab.
F60: Failure of SC 3.2.5 due to launching a new window when a user enters text into an input field
F9: Failure of SC 3.2.5 due to changing the context when the user removes focus from a form element
F22: Failure of SC 3.2.5 due to opening windows that are not requested by the user
F41: Failure of SC 2.2.1, 2.2.4, and 3.2.5 due to using meta refresh with a time-out
G85: Providing a text description when user input falls outside the required format or values
SCR18: Providing client-side validation and alert (Scripting)
Providing client-side validation and adding error text via the DOM (future link)
G139: Creating a mechanism that allows users to jump to errors
Validating form submissions on the server (future link)
Re-displaying a form with a summary of errors (future link)
Providing error notification as the user enters information (future link)
Assisting the user in making corrections by providing links to each error (future link)
Highlighting or visually emphasizing errors where they occur (future link)
Supplementing text with non-text content when reporting errors (future link)
G131: Providing descriptive labels AND one of the following:
Providing text instructions at the beginning of a form or set of fields that describes the necessary input (future link)
Positioning labels to maximize predictability of relationships (future link)
Providing linear form design / grouping similar items (future link)
G83: Providing text descriptions to identify required fields that were not completed
H44: Using label elements to associate text labels with form controls (HTML)
H71: Providing a description for groups of form controls using fieldset and legend elements (HTML)
H65: Using the title attribute to identify form controls when the label element cannot be used (HTML)
Using adjacent button to label the purpose of a field (future link)
Note: The techniques at the end of the above list should be considered "last resort" and only used when the other techniques cannot be applied to the page. The earlier techniques are preferred because they increase accessibility to a wider user group.
G85: Providing a text description when user input falls outside the required format or values
Providing links to suggested correction text "close to" form fields, or providing the suggested correction text itself directly on the Web page "next to" form fields (future link)
SCR18: Providing client-side validation and alert (Scripting)
Providing client-side validation and adding error text via the DOM (future link)
Providing links to suggested correction text "close to" form fields, or providing the suggested correction text itself directly on the Web page "next to" form fields (future link)
SCR18: Providing client-side validation and alert (Scripting)
Providing client-side validation and adding error text via the DOM (future link)
G139: Creating a mechanism that allows users to jump to errors
Making error messages easy to understand and distinguishable from other text in the Web page (future link)
Validating form submissions on the server (future link)
When mandatory information has not been provided, including descriptions or examples of correct information in addition to identifying the field as mandatory (future link)
Repeating and emphasizing suggestions for correcting each input error in the context of its form field (future link)
Providing a way for the user to skip from each item in a list of suggestions to its corresponding form field (future link)
Providing additional contextual help for the form field requiring change (future link)
Accepting input data in a variety of formats (future link)
Providing a text description that contains information about the number of input errors, suggestions for corrections to each item, and instructions on how to proceed (future link)
Providing a text description that contains suggestions for correction as the first item (or one of the first items) of content, or emphasizing this information in the content (future link)
Displaying errors and suggestions in the context of the original form (for example, re-displaying a form where input errors and suggestions for correction are highlighted and displayed in the context of the original form) (future link)
Providing "correct examples" for data and data formats as initial text in mandatory form fields (future link)
Providing links to suggested correction text "close to" form fields, or providing the suggested correction text itself directly on the Web page "next to" form fields (future link)
SCR18: Providing client-side validation and alert (Scripting)
Providing client-side validation and adding error text via the DOM (future link)
Calling a function from the submit action of a form to perform client side validation (future link)
Reversible: Submissions are reversible.
Checked: Data entered by the user is checked for input errors and the user is provided an opportunity to correct them .
Confirmed: A mechanism is available for reviewing, confirming, and correcting information before finalizing the submission.
Providing a stated period of time after submission of the form when the order can be updated or canceled by the user (future link)
G98: Providing the ability for the user to review and correct answers before submitting
Having a checkbox in addition to a submit button (future link)
Providing a dialog to the user which requires confirmation before information is deleted (future link)
Requiring a user to select a confirmation checkbox before submitting an action that causes information to be deleted (future link)
Having a checkbox in addition to a submit button (future link)
G98: Providing the ability for the user to review and correct answers before submitting
Asking for confirmation before final submission (future link)
Informing the user what irreversible action is about to happen (future link)
SCR18: Providing client-side validation and alert (Scripting)
Placing focus in the field containing the error (future link)
Avoiding use of the same words or letter combinations to begin each item of a drop-down list (future link)
Using scripts to provide context-sensitive bubble help (future link)
Providing help by an assistant in the Web page (future link)
Providing spell checking and suggestions for text input if applicable to the language (future link)
Using the title attribute to provide context-sensitive help
Providing instructions at the top of a form (future link)
Providing instructions at the top of a form (future link)
Checking byte of character and auto-converting to expected byte for text input if applicable (future link)
Reversible: Submissions are reversible.
Checked: Data entered by the user is checked for input errors and the user is provided an opportunity to correct them.
Confirmed: A mechanism is available for reviewing, confirming, and correcting information before finalizing the submission.
Following the sufficient techniques for Success Criterion 3.3.4 for all forms that require the user to submit information.
Note: Start and end tags that are missing a critical character in their formation, such as a closing angle bracket or a mismatched attribute value quotation mark are not complete.
Fully conforming to specifications (future link)
Ensuring that Web pages can be parsed by using one of the following techniques:
Note: This success criterion is primarily for Web authors who develop or script their own user interface controls. For example, standard HTML controls already meet this success criterion when used according to specification.
G108: Using markup features to expose the name and role, allow user-settable properties to be directly set, and provide notification of changes using technology-specific techniques below:
Using HTML form controls and links (future link)
H44: Using label elements to associate text labels with form controls (HTML)
H64: Using the title attribute of the frame and iframe elements (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)
Using XHTML role, state, and value attributes if repurposing static elements as interactive user interface components (future link)
SCR21: Using functions of the Document Object Model (DOM) to add content to a page (Scripting)
Using DOM Level 2 events (future link)
Exposing the names and roles, allowing user-settable properties to be directly set, and providing notification of changes using one of the following techniques:
SCR21: Using functions of the Document Object Model (DOM) to add content to a page (Scripting)
Using DOM Level 2 events (future link)
Providing labels for all form controls that do not have implicit labels (future link)
F59: Failure of SC 4.1.2 due to using script to make div or span a user interface control in HTML
Note: This failure may be solved in the future using DHTML roadmap techniques.
In order for a Web page to conform to WCAG 2.0, all of the following conformance requirements must be satisfied:
1.) Conformance Level: One of the following levels of conformance is met in full.
Level A: For Level A conformance (the minimum level of conformance), the Web page satisfies all the Level A success criteria, or a conforming alternate version is provided.
Level AA: For Level AA conformance, the Web page satisfies all the Level A and Level AA success criteria, or a Level AA conforming alternate version is provided.
Level AAA: For Level AAA conformance, the Web page satisfies all the Level A, Level AA and Level AAA success criteria, or a Level AAA conforming alternate version is provided.
Note: Although conformance can only be achieved at the stated levels, authors are encouraged to satisfy and report progress toward meeting success criteria from all levels beyond the achieved level of conformance.
2.) Full pages: Conformance is for full Web page(s) only, and cannot be achieved if part of a Web page is excluded.
Note: For the purpose of determining conformance, a conforming alternative to part of a page's content is considered part of the page when the alternative content is obtainable directly from the page, e.g., a long description.
3.) Complete processes: When a series of Web pages present sequential steps that need to be completed in order to accomplish an activity, all Web pages in the series conform at a particular level. (Conformance is not possible at any level if all pages in the sequence do not conform at that level.)
Example: An online store has a series of pages that are used to select and purchase products. All pages in the series from start to finish (checkout) must conform in order for any page that is part of the sequence to conform.
4.) Accessibility-Supported Technologies Only: Only accessibility supported technologies are relied upon to satisfy the success criteria. Any information or functionality that is implemented in technologies that are not accessibility supported must also be available via technologies that are accessibility supported. (See Understanding accessibility support.)
5.) Non-Interference: If technologies that are not accessibility supported are used on a page, or accessibility-supported technologies are used in a non-conforming way, then they do not block the ability of users to access the rest of the page. Specifically, the Web page as a whole continues to meet the conformance requirements under all of the following conditions:
when any (non accessibility-supported) technology is turned on in a user agent, and
when it is turned off in a user agent, and
when it is not supported by a user agent
Note: The following success criteria all apply to full pages including technologies that are not accessibility supported or relied upon to meet the other success criterion because they deal with things that could interfere with overall use of the page: 1.4.2 - Audio Control, 2.1.2 - No Keyboard Trap, 2.3.1 - Three Flashes or Below Threshold, and 2.2.2 - Pausing.
Note: If pages cannot conform (for example, conformance test pages or example pages) they cannot be included in the scope of conformance or conformance claim.
For more information, see Understanding Conformance Requirements.