Skip to main content

Others

Accessibility - WCAG 2.1

Why WCAG 2.1?

Web Content Accessibility Guidelines (WCAG) 2.1 covers a wide range of recommendations for making Web content more accessible. Following these guidelines will make content more accessible to a wider range of people with disabilities, including:

  • Blindness and low vision
  • Deafness and hearing loss
  • Limited movement
  • Speech disabilities
  • Photosensitivity
  • Combinations of these
  • Accommodations for learning disabilities and cognitive limitations

While they won’t meet every need for users with these disabilities, the guidelines address accessibility across desktops, laptops, tablets, and mobile devices. Following them generally improves web usability for all users.

💡
Note! WCAG 2.1 is an international standardized web accessibility guideline, created and maintained independent of Flexopus.

You can find the full description of the WCAG 3.1 guidelines on this page:

Web Content Accessibility Guidelines (WCAG) 2.1
Web Content Accessibility Guidelines (WCAG) 2.1 covers a wide range of recommendations for making Web content more accessible. Following these guidelines will make content more accessible to a wider range of people with disabilities, including accommodations for blindness and low vision, deafness and hearing loss, limited movement, speech disabilities, photosensitivity, and combinations of these, and some accommodation for learning disabilities and cognitive limitations; but will not address every user need for people with these disabilities. These guidelines address accessibility of web content on desktops, laptops, tablets, and mobile devices. Following these guidelines will also often make Web content more usable to users in general.

The measures that a software application needs to fulfill are summarized here:

WebAIM: WebAIM’s WCAG 2 Checklist

For German customers

The Barrierefreie-Informationstechnik-Verordnung (BITV) is aimed specifically at public bodies in Germany and is based on the Web Content Accessibility Guidelines (WCAG). As the WCAG are recognized worldwide and are regularly updated, they are frequently updated more quickly than the BITV. For this reason and because of their global relevance, we follow the WCAG as the internationally recognized standard for web accessibility.


Remarks

  • The normal user frontend fulfills the WCAG 2.1 requirements. The WCAG 2.1 requirements are followed through the development lifecycle of the application as much as technically possible and reasonable.
  • There are 78 written overall requirements in 13 modules.
  • The development team of Flexopus improved the application frontend with the 2.23.0 Release (2023 Mai) in order to fulfill the WCAG 2.1 requirements as much as technically possible and reasonable.
  • After an internal and external auditing, we fulfilled 77/78 of the requirements.
  • The requirement number 2.5.5 is not fulfilled (Clickable targets are at least 44 by 44. pixels). Due to our opinion, this requirement is specified in a non-modern way, since an application need to be designed to support smaller screen resolutions as well such as HD / FullHD / 2k and 4k resolutions as well. Fulfilling the requirement in a 4k is much easier as on a smaller resolution. However, displaying icons with 44px on an HD display resolution destroys any kind of modern application UI / IX design. So we decided not to implement this requirement for now. State: 19.6.2023.

WCAG 2.1 Requirements


1 - Perceivable

Web content is made available to the senses - sight, hearing, and/or touch.

No.
Requirement description
Guideline 1.2 Time-based Media Provide alternatives for time-based media NOTE: If the audio or video is designated as an alternative to web content (e.g., an audio or sign language version of a web page, for example), then the web content itself serves as the alter
1.1.1
Level A
Non-text Content
- Images, form image buttons, and image map hot spots have appropriate, equivalent alternative text.
- Images that do not convey content, are decorative, or contain content that is already conveyed in text are given null alt text (alt="") or implemented as CSS backgrounds.
- Linked images have descriptive alternative text.
- Equivalent alternatives to complex images are provided in context or on a separate linked page.
- Form buttons have a descriptive value.
- Form inputs have associated text labels.
- Embedded multimedia is identified via accessible text. Frames and iframes are appropriately
Guideline 1.2 Time-based Media Provide alternatives for time-based media NOTE: If the audio or video is designated as an alternative to web content (e.g., an audio or sign language version of a web page, for example), then the web content itself serves as the alter
1.2.1
Level A
Prerecorded Audio-only and Video-only
- A transcript of relevant content is provided for non-live audio-only (audio podcasts, MP3 files, etc.).
- A transcript or audio description of relevant content is provided for non-live video-only, unless the video is decorative.
1.2.2
Level A
Captions (Prerecorded)
- Synchronized captions are provided for non-live video (YouTube videos, etc.).
1.2.3
Level A
Audio Description or Media Alternative (Prerecorded)
- A transcript or audio description is provided for non-live video. NOTE: Only required if there is relevant visual content that is not presented in the audio.
1.2.4
Level AA
Captions (Live)
- Synchronized captions are provided for live media that contains audio (audio-only broadcasts, web casts, video conferences, etc.)
1.2.5
Level AA
Audio Description (Prerecorded)
- Audio descriptions are provided for non-live video. NOTE: Only required if there is relevant visual content that is not presented in the audio.
- While not required at Level AA, for optimal accessibility WebAIM recommends transcripts in addition to audio descriptions.
1.2.6
Level AAA
Sign Language (Prerecorded)
- A sign language video is provided for media that contains audio.
1.2.7
Level AAA
Extended Audio Description (Prerecorded)
- When audio description cannot be added to video due to audio timing (e.g., insufficient pauses in the audio), an alternative version of the video with pauses that allow audio descriptions is provided.
1.2.8
Level AAA
Media Alternative (Prerecorded)
- A transcript is provided for pre-recorded media that has a video track. For optimal accessibility, WebAIM strongly recommends transcripts for all multimedia.
1.2.9
Level AAA
Audio-only (Live)
- A descriptive text transcript (e.g., the script of the live audio) is provided for live content that has audio.
Guideline 1.3 Adaptable: Create content that can be presented in different ways (for example simpler layout) without losing information or structure
1.3.1
Level A
Info and Relationships
- Semantic markup is used to designate headings (<h1>), regions/landmarks, lists (<ul>, <ol>, and <dl>), emphasized or special text (<strong>, <code>, <abbr>, <blockquote>, for example), etc. Semantic markup is used appropriately.
- Tables are used for tabular data and data cells are associated with their headers. Data table captions, if present, are associated to data tables.
- Text labels are associated with form input elements. Related form elements are grouped with fieldset/legend. ARIA labelling may be used when standard HTML is insufficient.
1.3.2
Level A
Meaningful Sequence
- The reading and navigation order (determined by code order) is logical and intuitive.
1.3.3
Level A
Sensory Characteristics
- Instructions do not rely upon shape, size, or visual location (e.g., "Click the square icon to continue" or "Instructions are in the right-hand column").
- Instructions do not rely upon sound (e.g., "A beeping sound indicates you may continue.").
1.3.4
Level AA
Orientation
- Orientation of web content is not restricted to only portrait or landscape, unless a specific orientation is necessary.
1.3.5
Level AA
Identify Input Purpose
- Input fields that collect certain types of user information have an appropriate autocomplete attribute defined.
1.3.6
Level AAA
Identify Purpose
- HTML5 regions or ARIA landmarks are used to identify page regions.
- ARIA is used, where appropriate, to enhance HTML semantics to better identify the purpose of interface components.
Guideline 1.4 Distinguishable: Make it easier for users to see and hear content including separating foreground from background
1.4.1
Level A
Use of Color
- Color is not used as the sole method of conveying content or distinguishing visual elements.
- Color alone is not used to distinguish links from surrounding text unless the contrast ratio between the link and the surrounding text is at least 3:1 and an additional distinction (e.g., it becomes underlined) is provided when the link is hovered over and receives focus.
1.4.2
Level A
Audio Control
- A mechanism is provided to stop, pause, mute, or adjust volume for audio that automatically plays on a page for more than 3 seconds.
1.4.3
Level AA
Contrast (Minimum)
- Text and images of text have a contrast ratio of at least 4.5:1.
- Large text
- at least 18 point (typically 24px) or 14 point (typically 18.66px) and bold
- has a contrast ratio of at least 3:1.
1.4.4
Level AA
Resize text
- The page is readable and functional when the page is zoomed to 200%. NOTE: 1.4.10 (below) introduces a much higher requirement for zoomed content.
1.4.5
Level AA
Images of Text
- If the same visual presentation can be made using text alone, an image is not used to present that text.
1.4.6
Level AAA
Contrast (Enhanced)
- Text and images of text have a contrast ratio of at least 7:1.
- Large text
- at least 18 point (typically 24px) or 14 point (typically 18.66px) bold
- has a contrast ratio of at least 4.5:1.
1.4.7
Level AAA
Low or No Background Audio
- Audio with speech has no or very low background noise so the speech is easily distinguished.
1.4.8
Level AAA
Visual Presentation
- Blocks of text over one sentence in length:
- Are no more than 80 characters wide.
- Are NOT fully justified (aligned to both the left and the right margins).
- Have adequate line spacing (at least 1/2 the height of the text) and paragraph spacing (1.5 times line spacing).
- Have a specified foreground and background color. These can be applied to specific elements or to the entire page using CSS (and thus inherited by all other elements).
- Do NOT require horizontal scrolling when the text size is doubled.
1.4.9
Level AAA
Images of Text (No Exception)
- Text is used within an image only for decoration (image does not convey content) OR when the information cannot be presented with text alone.
1.4.10
Level AA
Reflow
- No loss of content or functionality occurs and horizontal scrolling is avoided when content is presented at a width of 320 pixels.
- This requires responsive design for most web sites. This is best tested by setting the browser window to 1280 pixels wide and then zooming the page content to 400%.
- Content that requires horizontal scrolling, such as data tables, complex images (such as maps and charts), toolbars, etc. are exempted.
1.4.11
Level AA
Non-text Contrast
- A contrast ratio of at least 3:1 is present for differentiating graphical objects (such as icons and components of charts or graphs) and author-customized interface components (such as buttons, form controls, and focus indicators/outlines).
- At least 3:1 contrast must be provided in the various states (focus, hover, active, etc.) of author-customized interactive components.
1.4.12
Level AA
Text Spacing
- No loss of content or functionality occurs when the user adapts paragraph spacing to 2 times the font size, text line height/spacing to 1.5 times the font size, word spacing to .16 times the font size, and letter spacing to .12 times the font size.
- This is best supported by avoiding pixel height definitions for elements that contain text.
1.4.13
Level AA
Content on Hover or Focus
- When additional content is presented on hover or keyboard focus:
- The newly revealed content can be dismissed (generally via the Esc key) without moving the pointer or keyboard focus, unless the content presents an input error or does not obscure or interfere with other page content.
- The pointer can be moved to the new content without the content disappearing.
- The new content must remain visible until the pointer or keyboard focus is moved away from the triggering control, the new content is dismissed, or the new content is no longer relevant.

2 - Operable

Interface forms, controls, and navigation are operable

No.
Requirement description
Guideline 2.1 Keyboard Accessible: Make all functionality available from a keyboard
2.1.1
Level A
Keyboard
- All page functionality is available using the keyboard, unless the functionality cannot be accomplished in any known way using a keyboard (e.g., free hand drawing).
- Page-specified shortcut keys and accesskeys (accesskey should typically be avoided) do not conflict with existing browser and screen reader shortcuts.
2.1.2
Level A
No Keyboard Trap
- Keyboard focus is never locked or trapped at one particular page element. The user can navigate to and from all navigable page elements using only a keyboard.
2.1.3
Level AAA
Keyboard (No Exception)
- All page functionality is available using the keyboard.
2.1.4
Level A
Character Key Shortcuts
- If a keyboard shortcut uses printable character keys, then the user must be able to disable the key command, change the defined key to a non-printable key (Ctrl, Alt, etc.), or only activate the shortcut when an associated interface component or button is focused.
Guideline 2.2 Enough Time: Provide users enough time to read and use content
2.2.1
Level A
Timing Adjustable
- If a page or application has a time limit, the user is given options to turn off, adjust, or extend that time limit. This is not a requirement for real-time events (e.g., an auction), where the time limit is absolutely required, or if the time limit is longer than 20 hours.
2.2.2
Level A
Pause, Stop, Hide
- Automatically moving, blinking, or scrolling content (such as carousels, marquees, or animations) that lasts longer than 5 seconds can be paused, stopped, or hidden by the user.
- Automatically updating content (e.g., a dynamically-updating news ticker, chat messages, etc.) can be paused, stopped, or hidden by the user or the user can manually control the timing of the updates
2.2.3
Level AAA
No Timing
- The content and functionality have no time limits or constraints.
2.2.4
Level AAA
Interruptions
- Interruptions (alerts, page updates, etc.) can be postponed or suppressed by the user.
2.2.5
Level AAA
Re-authenticating
- If an authentication session expires, the user can re-authenticate and continue the activity without losing any data from the current page.
2.2.6
Level AAA
Timeouts
- Users must be warned of any timeout that could result in data loss, unless the data is preserved for longer than 20 hours of user inactivity.
Guideline 2.3 Seizures and Physical Reactions: Do not design content in a way that is known to cause seizures or physical reactions.
2.3.1
Level A
Three Flashes or Below Threshold
- No page content flashes more than 3 times per second unless that flashing content is sufficiently small and the flashes are of low contrast and do not contain too much red. (See general flash and red flash thresholds)
2.3.2
Level AAA
Three Flashes
- No page content flashes more than 3 times per second.
2.3.3
Level AAA
Animation from Interactions
- Users can disable non-essential animation and movement that is triggered by user interaction.
Guideline 2.4 Navigable: Provide ways to help users navigate, find content, and determine where they are.
2.4.1
Level A
Bypass Blocks
- A link is provided to skip navigation and other page elements that are repeated across web pages.
- A proper heading structure and/or identification of page regions/landmarks may be considered a sufficient technique. Because navigating by headings or regions is not supported in most browsers, WebAIM recommends a "skip" link (in addition to headings and regions) to best support sighted keyboard users.
2.4.2
Level A
Page Titled
- The web page has a descriptive and informative page title.
2.4.3
Focus Order
- The navigation order of links, form elements, etc. is logical and intuitive.
2.4.4
Level A
Link Purpose (In Context)
- The purpose of each link (or form image button or image map hotspot) can be determined from the link text alone, or from the link text and its context (e.g., surrounding text, list item, previous heading, or table headers).
- Links (or form image buttons) with the same text that go to different locations are readily distinguishable.
2.4.5
Level AA
Multiple Ways
- Multiple ways are available to find other web pages on the site
- at least two of: a list of related pages, table of contents, site map, site search, or list of all available web pages.
2.4.6
Level AA
Headings and Labels
- Page headings and labels for form and interactive controls are informative. Avoid duplicating heading (e.g., "More Details") or label text (e.g., "First Name") unless the structure provides adequate differentiation between them.
2.4.7
Level AA
Focus Visible
- It is visually apparent which page element has the current keyboard focus (i.e., as you tab through the page, you can see where you are).
2.4.8
Level AAA
Location
- If a web page is part of a sequence of pages or within a complex site structure, an indication of the current page location is provided, for example, through breadcrumbs or specifying the current step in a sequence (e.g., "Step 2 of 5 - Shipping Address").
2.4.9
Level AAA
Link Purpose (Link Only)
- The purpose of each link (or form image button or image map hotspot) can be determined from the link text alone.
- There are no links (or form image buttons) with the same text that go to different locations.
2.4.10
Level AAA
Section Headings
- Beyond providing an overall document structure, individual sections of content are designated using headings, where appropriate.
Guideline 2.5 Input Modalities: Make it easier for users to operate functionality through various inputs beyond keyboard.
2.5.1
Level A
Pointer Gestures
- If multipoint or path-based gestures (such as pinching, swiping, or dragging across the screen) are not essential to the functionality, then the functionality can also be performed with a single point activation (such as activating a button).
2.5.2
Level A
Pointer Cancellation
- To help avoid inadvertent activation of controls, avoid non-essential down-event (e.g., onmousedown) activation when clicking, tapping, or long pressing the screen. Use onclick, onmouseup, or similar instead. If onmouseup (or similar) is used, you must provide a mechanism to abort or undo the action performed.
2.5.3
Level A
Label in Name
- If an interface component (link, button, etc.) presents text (or images of text), the accessible name (label, alternative text, aria-label, etc.) for that component must include the visible text.
2.5.4
Level A
Motion Actuation
- Functionality that is triggered by moving the device (such as shaking or panning a mobile device) or by user movement (such as waving to a camera) can be disabled and equivalent functionality is provided via standard controls like buttons.
2.5.5
Level AAA
Target Size
- Clickable targets are at least 44 by 44 pixels in size unless an alternative target of that size is provided, the target is inline (such as a link within a sentence), the target is not author-modified (such as a default checkbox), or the small target size is essential to the functionality.
2.5.6
Level AAA
Concurrent Input Mechanisms
- Content does not restrict input to a specific modality, such as touch-only or keyboard-only, but must support alternative inputs (such as using a keyboard on a mobile device).

3 - Understandable

Information and the operation of user interface must be understandable.

No.
Requirement description
Guideline 3.1 Readable: Make text content readable and understandable
3.1.1
Level A
Language of Page
- The language of the page is identified using the HTML lang attribute (e.g., <html lang="en">).
3.1.2
Level AA
Language of Parts
- The language of page content that is in a different language is identified using the lang attribute (e.g., <blockquote lang="es">).
3.1.3
Level AAA
Unusual Words
- Words that may be ambiguous, unfamiliar, or used in a very specific way are defined through adjacent text, a definition list, a glossary, or other suitable method.
3.1.4
Level AAA
Abbreviations
- The meaning of an unfamiliar abbreviation is provided by expanding it the first time it is used, using the element, or linking to a definition or glossary.
3.1.5
Level AAA
Reading Level
- A more understandable alternative is provided for content that is more advanced than can be reasonably read by a person with roughly 9 years of primary education.
3.1.6
Level AAA
Pronunciation
- If the pronunciation of a word is vital to understanding that word, its pronunciation is provided immediately following the word or via a link or glossary.
Guideline 3.2 Predictable: Make Web pages appear and operate in predictable ways
3.2.1
Level A
On Focus
- When a page element receives focus, it does not result in a substantial change to the page, the spawning of a pop-up window, an additional change of keyboard focus, or any other change that could confuse or disorient the user.
3.2.2
Level A
On Input
- When a user inputs information or interacts with a control, it does not result in a substantial change to the page, the spawning of a pop-up window, an additional change of keyboard focus, or any other change that could confuse or disorient the user unless the user is informed of the change ahead of time.
3.2.3
Level AA
Consistent Navigation
- Navigation links that are repeated on web pages do not change order when navigating through the site.
3.2.4
Level AA
Consistent Identification
- Elements that have the same functionality across multiple web pages are consistently identified. For example, a search box at the top of the site should always be labeled the same way.
3.2.5
Level AAA
Change on Request
- Substantial changes to the page, the spawning of pop-up windows, uncontrolled changes of keyboard focus, or any other change that could confuse or disorient the user must be initiated by the user. Alternatively, the user is provided an option to disable such changes.
Guideline 3.3 Input Assistance: Help users avoid and correct mistakes
3.3.1
Level A
Error Identification
- Required form elements or form elements that require a specific format, value, or length provide this information within the element's label.
- Form validation errors are efficient, intuitive, and accessible. The error is clearly identified, quick access to the problematic element is provided, and the user can easily fix the error and resubmit the form.
3.3.2
Level A
Labels or Instructions
- Sufficient labels, cues, and instructions for required interactive elements are provided via instructions, examples, properly positioned form labels, and/or fieldsets/legends.
3.3.3
Level AA
Error Suggestion
- If an input error is detected (via client-side or server-side validation), suggestions are provided for fixing the input in a timely and accessible manner.
3.3.4
Level AA
Error Prevention (Legal, Financial, Data)
- If the user can change or delete legal, financial, or test data, the changes/deletions can be reversed, verified, or confirmed.
3.3.5
Level AAA
Help
- Instructions and cues are provided in context to help in form completion and submission.
3.3.6
Level AAA
Error Prevention (All)
- If the user can submit information, the submission is reversible, verified, or confirmed.

4 - Robust

Content must be robust enough that it can be interpreted by a wide variety of user agents, including assistive technologies

No.
Requirement description
Guideline 4.1 Compatible: Maximize compatibility with current and future user agents, including assistive technologies
4.1.1
Level A
Parsing
- Significant HTML validation/parsing errors are avoided. Check at http://validator.w3.org/
4.1.2
Level A
Name, Role, Value
- Markup is used in a way that facilitates accessibility. This includes following the HTML specifications and using forms, form labels, frame titles, etc. appropriately.
- ARIA is used appropriately to enhance accessibility when HTML is not sufficient.
4.1.3
Level AA
Status Messages
- If an important status message is presented and focus is not set to that message, the message must be announced to screen reader users, typically via an ARIA alert or live region.