WCAG 1 updates
An appendix to the responsibilities in accessibility article. The checkpoints are from the W3C's Checklist of Checkpoints.
Site:
These are still firmly within the site's responsibility:
1.1 Provide a text equivalent for every non-text element (e.g., via 'alt', 'longdesc', or in element content).
1.3 Until user agents can automatically read aloud the text equivalent of a visual track, provide an auditory description of the important information of the visual track of a multimedia presentation.
1.4 For any time-based multimedia presentation (e.g., a movie or animation), synchronize equivalent alternatives (e.g., captions or auditory descriptions of the visual track) with the presentation.
2.1 Ensure that all information conveyed with color is also available without color, for example from context or markup.
2.2 Ensure that foreground and background color combinations provide sufficient contrast when viewed by someone having color deficits or when viewed on a black and white screen. [Priority 2 for images].
3.1 When an appropriate markup language exists, use markup rather than images to convey information.
3.2 Create documents that validate to published formal grammars.
3.3 Use style sheets to control layout and presentation.
3.5 Use header elements to convey document structure and use them according to specification.
3.6 Mark up lists and list items properly.
3.7 Mark up quotations. Do not use quotation markup for formatting effects such as indentation.
4.1 Clearly identify changes in the natural language of a document's text and any text equivalents (e.g., captions).
4.2 Specify the expansion of each abbreviation or acronym in a document where it first occurs.
4.3 Identify the primary natural language of a document.
5.1 For data tables, identify row and column headers.
5.2 For data tables that have two or more logical levels of row or column headers, use markup to associate data cells and header cells.
5.3 Do not use tables for layout unless the table makes sense when linearized. Otherwise, if the table does not make sense, provide an alternative equivalent (which may be a linearized version).
5.4 If a table is used for layout, do not use any structural markup for the purpose of visual formatting.
5.5 Provide summaries for tables.
5.6 Provide abbreviations for header labels.
6.1 Organize documents so they may be read without style sheets. For example, when an HTML document is rendered without associated style sheets, it must still be possible to read the document.
6.2 Ensure that equivalents for dynamic content are updated when the dynamic content changes.
6.3 Ensure that pages are usable when scripts, applets, or other programmatic objects are turned off or not supported. If this is not possible, provide equivalent information on an alternative accessible page.
6.5 Ensure that dynamic content is accessible or provide an alternative presentation or page.
8.1 Make programmatic elements such as scripts and applets directly accessible or compatible with assistive technologies.
10.2 Until user agents support explicit associations between labels and form controls, for all form controls with implicitly associated labels, ensure that the label is properly positioned.
12.3 Divide large blocks of information into more manageable groups where natural and appropriate.
12.4 Associate labels explicitly with their controls.
13.1 Clearly identify the target of each link.
13.3 Provide information about the general layout of a site (e.g., a site map or table of contents).
13.4 Use navigation mechanisms in a consistent manner.
13.5 Provide navigation bars to highlight and give access to the navigation mechanism.
13.8 Place distinguishing information at the beginning of headings, paragraphs, lists, etc.
14.1 Use the clearest and simplest language appropriate for a site's content.
14.2 Supplement text with graphic or auditory presentations where they will facilitate comprehension of the page.
14.3 Create a style of presentation that is consistent across pages.
User / User-agent
These could be under the user's control:
7.5 Until user agents provide the ability to stop auto-redirect, do not use markup to redirect pages automatically. Instead, configure the server to perform redirects.
It is currently easy to prevent this in some user agents (e.g. Firefox), and it should be easy in other UAs.
7.4 Until user agents provide the ability to stop the refresh, do not create periodically auto-refreshing pages.
It is currently easy to prevent this.
7.3 Until user agents allow users to freeze moving content, avoid movement in pages.
JavaScript and GIF animations should be fairly easy to prevent, however embedded content such as Flash and movie files would probably be all or nothing, i.e. you wouldn't be able to get any content from them.
7.2 Until user agents allow users to control blinking, avoid causing content to blink (i.e., change presentation at a regular rate, such as turning on and off).
It is currently easy to prevent this, barring embedded items.
7.1 Until user agents allow users to control flickering, avoid causing the screen to flicker.
It is currently easy to prevent this, barring embedded items.
3.4 Use relative rather than absolute units in markup language attribute values and style sheet property values.
With the use of CSS, the user should be able to override font size issues. However, overriding layout is rather complex, see the article for details.
13.6 Group related links, identify the group (for user agents), and, until user agents do so, provide a way to bypass the group.
UAs can be set to detect groups of links, and provide a means of skipping to the next bit of real 'content'. (E.g. JAWs can skip to the next 25 words that don't contain a link.
10.1 Until user agents allow users to turn off spawned windows, do not cause pop-ups or other windows to appear and do not change the current window without informing the user.
Most browsers now prevent pop-ups that are not initiated by the user. It is important for the UA to notify the user that it has blocked pop-ups, as otherwise the user may not be able to override the block.
Unnecessary / Redundant
1.2 Provide redundant text links for each active region of a server-side image map. 9.5 Provide keyboard shortcuts to important links (including those in client-side image maps), form controls, and groups of form controls.
1.5 Until user agents render text equivalents for client-side image map links, provide redundant text links for each active region of a client-side image map.
9.1 Provide client-side image maps instead of server-side image maps except where the regions cannot be defined with an available geometric shape.
10.3 Until user agents (including assistive technologies) render side-by-side text correctly, provide a linear text alternative (on the current page or some other) for all tables that lay out text in parallel, word-wrapped columns.
10.4 Until user agents handle empty controls correctly, include default, place-holding characters in edit boxes and text areas.
10.5 Until user agents (including assistive technologies) render adjacent links distinctly, include non-link, printable characters (surrounded by spaces) between adjacent links.
11.3 Provide information so that users may receive documents according to their preferences (e.g., language, content type, etc.)
11.4 If, after best efforts, you cannot create an accessible page, provide a link to an alternative page that uses W3C technologies, is accessible, has equivalent information (or functionality), and is updated as often as the inaccessible (original) page.
12.1 Title each frame to facilitate frame identification and navigation.
12.2 Describe the purpose of frames and how frames relate to each other if it is not obvious by frame titles alone.
13.7 If search functions are provided, enable different types of searches for different skill levels and preferences.
13.9 Provide information about document collections (i.e., documents comprising multiple pages.).
13.10 Provide a means to skip over multi-line ASCII art.
Scripts (treat as flash)
6.2 Ensure that equivalents for dynamic content are updated when the dynamic content changes.
6.4 For scripts and applets, ensure that event handlers are input device-independent.
9.2 Ensure that any element that has its own interface can be operated in a device-independent manner.
9.3 For scripts, specify logical event handlers rather than device-dependent event handlers.
Redundant - covered by general guidelines above:
9.4 Create a logical tab order through links, form controls, and objects.
13.2 Provide metadata to add semantic information to pages and sites.
11.2 Avoid deprecated features of W3C technologies.
11.1 Use W3C technologies when they are available and appropriate for a task and use the latest versions when supported.