Web Content Accessibility Guidelines

This website contains links to software which is no longer maintained. For the latest documentation about current CKSource projects, including software like CKEditor 4/CKEditor 5, CKFinder 3, Cloud Services, Letters, Accessibility Checker, please visit the new documentation website.

The full WCAG 1.0 checklist can be viewed in W3C's website.

Priority 1 Checkpoints

In General (Priority 1)
1.1 Provide a text equivalent for every non-text element (e.g., via "alt", "longdesc", or in element content). This includes: images, graphical representations of text (including symbols), image map regions, animations (e.g., animated GIFs), applets and programmatic objects, ascii art, frames, scripts, images used as list bullets, spacers, graphical buttons, sounds (played with or without user interaction), stand-alone audio files, audio tracks of video, and video.
Yes
Important images, such as toolbar buttons and frequently used smiley icons, are provided with screenreader accessible alternate text.
2.1 Ensure that all information conveyed with color is also available without color, for example from context or markup.
Yes
Toolbar buttons will appear as textual buttons in Windows high contrast mode. Selection of text and background colors is still possible with textual labels in the color selection panels.
4.1 Clearly identify changes in the natural language of a document's text and any text equivalents (e.g., captions).
Yes
The lang attribute is present in the editor's HTML container, dialogs and popup menus.
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.
Yes
The editor and its dialogs are still usable without cascading style sheets. Toolbar buttons appear as textual links without CSS.
6.2 Ensure that equivalents for dynamic content are updated when the dynamic content changes.
Yes
  • IFrames in the editor, such as the WYSIWYG editing area and combo boxes, are given screenreader accessible labels.
  • An equivalent text-only page with a <textarea> element can be created by not activating CKEditor's replace API, if JavaScript is not an option.
7.1 Until user agents allow users to control flickering, avoid causing the screen to flicker.
Yes
There are no blinking or flickering contents in the editor. Moveable UI elements such as dialogs can only be moved in a smooth fashion by the user.
14.1 Use the clearest and simplest language appropriate for a site's content.
Yes
Accessible labels are kept as concise and simple simple as possible.
And if you use images and image maps (Priority 1)
1.2 Provide redundant text links for each active region of a server-side image map.
NA
There are no image maps in the editor.
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.
NA
There are no image maps in the editor.
And if you use tables (Priority 1)
5.1 For data tables, identify row and column headers.
NA
There are no data tables in the editor UI.Tables are used for layout purpose only.
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.
NA
There are no data tables in the editor UI.Tables are used for layout purpose only.
And if you use frames (Priority 1)
12.1 Title each frame to facilitate frame identification and navigation.
Yes
IFrames in the editor, such as the WYSIWYG editing area and combo boxes, are given screenreader accessible labels.
And if you use applets and scripts (Priority 1)
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.
Yes
An equivalent text-only page with a <textarea> element can be created by not activating CKEditor's replace API, if JavaScript is not an option.
And if you use multimedia (Priority 1)
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.
NA
There are no video or audio contents in the editor.
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.
NA
There are no video or audio contents in the editor.
And if all else fails (Priority 1)
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.
Yes
An equivalent text-only page with a <textarea> element can be created by not activating CKEditor's replace API, if JavaScript is not an option.

Priority 2 Checkpoints

In General (Priority 2)
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, Priority 3 for text].
Yes
  • Image elements in the editor UI are designed with good contrast to insure visibility in black and white screens.
  • Textual elements in the editor UI have good contrast against the background color.
3.1 When an appropriate markup language exists, use markup rather than images to convey information.
Yes

3.2 Create documents that validate to published formal grammars.
Yes
IFrame documents created by the editor are always displayed in standards compliant mode rather than quirks mode.
3.3 Use style sheets to control layout and presentation.
Yes

3.4 Use relative rather than absolute units in markup language attribute values and style sheet property values.
No
px is used for sizing most UI elements.
3.5 Use header elements to convey document structure and use them according to specification.
NA

3.6 Mark up lists and list items properly.
NA

3.7 Mark up quotations. Do not use quotation markup for formatting effects such as indentation.
NA

6.5 Ensure that dynamic content is accessible or provide an alternative presentation or page.
Yes
An equivalent text-only page with a <textarea> element can be created by not activating CKEditor's replace API, if JavaScript is not an option.
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).
Yes
There are no blinking or flickering contents in the editor. Moveable UI elements such as dialogs can only be moved in a smooth fashion by the user.
7.4 Until user agents provide the ability to stop the refresh, do not create periodically auto-refreshing pages.
Yes
There is no auto-refresh logic in the editor.
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.
Yes
There is no auto-redirect markup in the editor.
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.
Yes
All dialogs in the editor UI are floating dialogs displayed within the same page.
11.1 Use W3C technologies when they are available and appropriate for a task and use the latest versions when supported.
Yes

11.2 Avoid deprecated features of W3C technologies.
Yes

12.3 Divide large blocks of information into more manageable groups where natural and appropriate.
Yes
Complicated dialogs are split into screenreader accessible tabbed pages.
13.1 Clearly identify the target of each link.
Yes

13.2 Provide metadata to add semantic information to pages and sites.
NA

13.3 Provide information about the general layout of a site (e.g., a site map or table of contents).
NA

13.4 Use navigation mechanisms in a consistent manner.
Yes
Same or similar set of hotkeys (Tab, Shift-Tab, Alt-F10) are used in similar navigating actions in different UI elements.
And if you use tables (Priority 2)
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).
No
Tables are used for layout in dialogs. Some of the current table layouts may not make sense when linearized.
5.4 If a table is used for layout, do not use any structural markup for the purpose of visual formatting.
Yes

And if you use frames (Priority 2)
12.2 Describe the purpose of frames and how frames relate to each other if it is not obvious by frame titles alone.
NA
IFrames in the editor are dynamically generated and so it does not make sense to have a separate description section for them.
And if you use forms (Priority 2)
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.
Yes
Implicit labels (e.g. checkbox labels in dialogs) are always positioned next to the input widgets.
12.4 Associate labels explicitly with their controls.
No
Some UI elements in the editor use implicit labels.
And if you use applets and scripts (Priority 2)
6.4 For scripts and applets, ensure that event handlers are input device-independent.
Yes
Most or all UI elements in the editor can be interacted with via mouse or keyboard.
7.3 Until user agents allow users to freeze moving content, avoid movement in pages.
Yes
UI element or content movements in the editor can only be effected by the user.
8.1 Make programmatic elements such as scripts and applets directly accessible or compatible with assistive technologies [Priority 1 if functionality is important and not presented elsewhere, otherwise Priority 2.]
Yes
Device-independent JavaScript events (e.g. onclick for links which is also fired when user presses Enter) are used in the editor. In other cases, redundant input mechanisms are also provided.
9.2 Ensure that any element that has its own interface can be operated in a device-independent manner.
Yes

9.3 For scripts, specify logical event handlers rather than device-dependent event handlers.
Yes

Priority 3 Checkpoints

In General (Priority 3)
4.2 Specify the expansion of each abbreviation or acronym in a document where it first occurs.
No

4.3 Identify the primary natural language of a document.
No

9.4 Create a logical tab order through links, form controls, and objects.
Yes
All user interactive controls in the editor UI have JavaScript-based tab order.
9.5 Provide keyboard shortcuts to important links (including those in client-side image maps), form controls, and groups of form controls.
Yes
Frequently used toolbar buttons, such as Bold and Undo, have keyboard shortcuts.
10.5 Until user agents (including assistive technologies) render adjacent links distinctly, include non-link, printable characters (surrounded by spaces) between adjacent links.
No

11.3 Provide information so that users may receive documents according to their preferences (e.g., language, content type, etc.)
Yes
The editor is able to detect the preferred language settings in the browser and display with the appropriate translation.
13.5 Provide navigation bars to highlight and give access to the navigation mechanism.
Yes

13.6 Group related links, identify the group (for user agents), and, until user agents do so, provide a way to bypass the group.
No

13.7 If search functions are provided, enable different types of searches for different skill levels and preferences.
No

13.8 Place distinguishing information at the beginning of headings, paragraphs, lists, etc.
NA

13.9 Provide information about document collections (i.e., documents comprising multiple pages.).
NA

13.10 Provide a means to skip over multi-line ASCII art.
NA
There is no ASCII art in the editor UI.
14.2 Supplement text with graphic or auditory presentations where they will facilitate comprehension of the page.
No

14.3 Create a style of presentation that is consistent across pages.
Yes
The theme and skin systems in the editor ensures that different UI elements will have consistent styles.
And if you use images and image maps (Priority 3)
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.
NA
There are no image maps in the editor.
And if you use tables (Priority 3)
5.5 Provide summaries for tables.
NA
Tables in the editor UI are only used for layout purposes.
5.6 Provide abbreviations for header labels.
NA
Tables in the editor UI are only used for layout purposes.
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.
No

And if you use forms (Priority 3)
10.4 Until user agents handle empty controls correctly, include default, place-holding characters in edit boxes and text areas.
No

This page was last edited on 29 September 2009, at 19:36.