forked from ILIAS-eLearning/ILIAS
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request ILIAS-eLearning#491 from Amstutz/accessibility_gui…
…delines Docs: Introduction of accessibility guidelines
- Loading branch information
Showing
1 changed file
with
221 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,221 @@ | ||
# Accessibility Guidelines | ||
|
||
According the [Strategy 2017](http://www.ilias.de/docu/goto_docu_file_5585_download.html) | ||
ILIAS aims to to be "Usable for Everyone" including users with special needs. | ||
ILIAS therefore aims to conform with WCAG (Web Content Accessibility Guidelines) 2.0 on | ||
conformance level A (see [https://www.w3.org/TR/WCAG20/](https://www.w3.org/TR/WCAG20/) | ||
). WCAGs "cover a wide range of recommendations for making Web content more accessible" | ||
. They claim that "following these guidelines will make content accessible to a | ||
wider range of people with disabilities, including blindness and low vision, deafness | ||
and hearing loss, learning disabilities, cognitive limitations, limited movement, | ||
speech disabilities, photosensitivity and combinations of these". The base guideline | ||
concerning accessibility in ILIAS is therefore: | ||
|
||
- HTML-Output generated by ILIAS **MUST** comply with all WCAG 2.0 level A. | ||
|
||
Note: In several scenarios, developers can make not guarantees/statements, whether | ||
those guidelines are met by user generated content (such as uploaded videos or files). | ||
However, developers SHOULD make a best effort, to support users in generating only | ||
content that meets the listed guidelines. | ||
|
||
The WCAG are structured by four principles that provide the foundation for Web | ||
accessibility: perceivable, operable, understandable, and robust. In the following | ||
sections we list all WCAG 2.0 level A guidelines we believe to have potential | ||
consequences on developing ILIAS. Note that they are originate from: | ||
[WCAG 2.0](https://www.w3.org/TR/WCAG20/). If unsure on how to | ||
meet some criteria, one can consult [How to Meet WCAG 2.0](https://www.w3.org/WAI/WCAG20/quickref/). | ||
|
||
### Principle 1: Perceivable | ||
Information and user interface components must be presentable to users in ways they can perceive. | ||
|
||
#### Guideline 1.1 Text Alternatives | ||
Provide text alternatives for any non-text content so that it can be changed into other | ||
forms people need, such as large print, braille, speech, symbols or simpler language. | ||
|
||
- **Non-text Content**: All non-text content that is presented to the user has a text | ||
alternative that serves the equivalent purpose, except for the situations listed below: | ||
|
||
- **Controls, Input**: If non-text content is a control or accepts user input, then it | ||
has a name that describes its purpose. | ||
|
||
- **Time-Based Media**: If non-text content is time-based media, then text alternatives | ||
at least provide descriptive identification of the non-text content. | ||
|
||
- **CAPTCHA**: If the purpose of non-text content 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 non-text content is pure decoration, is used | ||
only for visual formatting, or is not presented to users, then it is implemented in a | ||
way that it can be ignored by assistive technology. Note: According to the WAI, | ||
decorative images don’t add information to the content of a page. For example, the | ||
information provided by the image might already be given using adjacent text, or the | ||
image might be included to make the website more visually attractive | ||
[https://www.w3.org/WAI/tutorials/images/decorative/](https://www.w3.org/WAI/tutorials/images/decorative/). | ||
|
||
#### Guideline 1.2 Time-based Media | ||
Provide alternatives for time-based media. | ||
|
||
- **Captions (Prerecorded)**: Captions are provided for all prerecorded audio content in | ||
synchronized media, except when the media is a media alternative for text and is | ||
clearly labeled as such. (Level A) | ||
|
||
#### Guideline 1.3 Adaptable | ||
Create content that can be presented in different ways (for example simpler layout) | ||
without losing information or structure. | ||
|
||
- **Info and Relationships**: Information, structure, and relationships conveyed through | ||
presentation can be programmatically determined or are available in text. | ||
|
||
- **Meaningful Sequence**: When the sequence in which content is presented affects its | ||
meaning, a correct reading sequence can be programmatically determined. | ||
|
||
- **Sensory Characteristics**: Instructions provided for understanding and operating | ||
content do not rely solely on sensory characteristics of components such as shape, | ||
size, visual location, orientation, or sound. | ||
|
||
|
||
#### Guideline 1.4 Distinguishable | ||
Make it easier for users to see and hear content including separating foreground from background. | ||
|
||
- **Use of Color**: Color is not used as the only visual means of conveying information, | ||
indicating an action, prompting a response, or distinguishing a visual element. | ||
|
||
- **Audio Control**: If any audio on a Web page plays automatically for more than 3 | ||
seconds, either a mechanism is available to pause or stop the audio, or a mechanism is | ||
available to control audio volume independently from the overall system volume level. | ||
|
||
|
||
### Principle 2: Operable | ||
User interface components and navigation must be operable. | ||
|
||
#### Guideline 2.1 Keyboard Accessible | ||
Make all functionality available from a keyboard. | ||
|
||
- **Keyboard**: All functionality of the content is operable through a keyboard interface | ||
without requiring specific timings for individual keystrokes, except where the | ||
underlying function requires input that depends on the path of the user's movement and | ||
not just the endpoints. 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. This does not forbid and should not discourage providing mouse input or | ||
other input methods in addition to keyboard operation. | ||
|
||
- **No Keyboard Trap**: If keyboard focus can be moved to a component of the page using a | ||
keyboard interface, then focus can be moved away from that component using only a | ||
keyboard interface, and, if it requires more than unmodified arrow or tab keys or other | ||
standard exit methods, the user is advised of the method for moving focus away. 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. | ||
|
||
|
||
#### Guideline 2.2 Enough Time | ||
Provide users enough time to read and use content. | ||
|
||
- **Timing Adjustable**: For each time limit that is set by the content, **at least one** of the following is true: | ||
|
||
- **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 is essential and extending it would invalidate | ||
the activity; or | ||
|
||
- **20 Hour Exception**: The time limit is longer than 20 hours. | ||
|
||
- **Pause, Stop, Hide**: For moving, blinking, scrolling, or auto-updating information, | ||
**all of the following** are true: | ||
|
||
- **Moving, blinking, scrolling**: For any moving, blinking or scrolling information that | ||
(1) starts automatically, (2) lasts more than five seconds, and (3) is presented in | ||
parallel with other content, there is a mechanism for the user to pause, stop, or | ||
hide it unless the movement, blinking, or scrolling is part of an activity where it | ||
is essential; and | ||
|
||
- **Auto-updating**: For any auto-updating information that (1) starts automatically and | ||
(2) is presented in parallel with other content, there is a mechanism for the user to | ||
pause, stop, or hide it or to control the frequency of the update unless the | ||
auto-updating is part of an activity where it is essential. | ||
|
||
#### Guideline 2.3 Seizures | ||
Do not design content in a way that is known to cause seizures. | ||
|
||
- **Three Flashes or Below Threshold**: Web pages do not contain anything that flashes more | ||
than three times in any one second period, or the flash is below the general flash | ||
and red flash thresholds. | ||
|
||
#### Guideline 2.4 Navigable | ||
Provide ways to help users navigate, find content, and determine where they are. | ||
|
||
- **Bypass Blocks**: A mechanism is available to bypass blocks of content that are repeated | ||
on multiple Web pages. | ||
|
||
- **Page Titled**: Web pages have titles that describe topic or purpose. | ||
|
||
- **Focus Order**: If a Web page can be navigated sequentially and the navigation sequences | ||
affect meaning or operation, focusable components receive focus in an order that | ||
preserves meaning and operability. | ||
|
||
- **Link Purpose (In Context)**: The purpose of each link can be determined from the link | ||
text alone or from the link text together with its programmatically determined link | ||
context, except where the purpose of the link would be ambiguous to users in general. | ||
|
||
### Principle 3: Understandable | ||
Information and the operation of user interface must be understandable. | ||
|
||
#### Guideline 3.1 Readable | ||
Make text content readable and understandable. | ||
|
||
- **Language of Page**: The default human language of each Web page can be programmatically determined. | ||
|
||
#### Guideline 3.2 Predictable | ||
Make Web pages appear and operate in predictable ways. | ||
|
||
- **On Focus**: When any component receives focus, it does not initiate a change of context. | ||
|
||
- **On Input**: Changing the setting of any user interface component does not automatically | ||
cause a change of context unless the user has been advised of the behavior before | ||
using the component. | ||
|
||
#### Guideline 3.3 Input Assistance | ||
Help users avoid and correct mistakes. | ||
|
||
- **Error Identification**: If an input error is automatically detected, the item that is | ||
in error is identified and the error is described to the user in text. | ||
|
||
- **Labels or Instructions**: Labels or instructions are provided when content requires user input. | ||
|
||
|
||
### Principle 4: Robust | ||
Content must be robust enough that it can be interpreted reliably by a wide variety of | ||
user agents, including assistive technologies. | ||
|
||
#### Guideline 4.1 Compatible | ||
Maximize compatibility with current and future user agents, including assistive technologies. | ||
|
||
- **Parsing**: In content implemented using markup languages, elements have complete start | ||
and end tags, elements are nested according to their specifications, elements do not | ||
contain duplicate attributes, and any IDs are unique, except where the specifications | ||
allow these features. 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. | ||
|
||
- **Name, Role, Value**: For all user interface components (including but not limited to: | ||
form elements, links and components generated by scripts), the name and role can be | ||
programmatically determined; states, properties, and values that can be set by the user | ||
can be programmatically set; and notification of changes to these items is available | ||
to user agents, including assistive technologies. This success criterion is primarily | ||
for Web authors who develop or script their own user interface components. For | ||
example, standard HTML controls already meet this success criterion when used according | ||
to specification. | ||
|