Ans is compliant with WCAG 2.1 A criteria, the majority of AA criteria, and several AAA criteria.
Failures to comply with criteria are marked in italic.
Principle 1 - Perceivable
1.1.1 Non-text Content
Ans contains very little non-text content, and the content that does exist has ARIA labels to describe the function or content. Ans also provides test makers the ability to add a caption and alt-text to image content within a test.
1.2.1 Audio-only and Video-only (Prerecorded)
Ans does not contain video or audio assets that are not either purely decorative, or described in surrounding content. Ans still needs to make it possible to add descriptions, captions and/or alt-text for video and audio assets within tests.
1.2.2 Captions (Prerecorded)
1.2.3 Audio Description or Media Alternative (Prerecorded)
1.2.4 Captions (Live)
Ans does not contain any live video or audio assets.
1.2.5 Audio Description (Prerecorded)
Ans does not contain prerecorded video or audio content with meaningful audio.
1.3.1 Info and Relationships
Site content is identified using landmark tags.
1.3.2 Meaningful Sequence
Site content follows a meaningful sequence and matches DOM order.
1.3.3 Sensory Characteristics
Instructions for understanding and operating the content are all text based, and in no way dependent on other sensory characteristics.
Content is not dependent on display orientation.
1.3.5 Identify Input Purpose
Input fields for user information have a defined type matching their purpose.
1.4.1 Use of Color
Color is not used as the primary means of conveying information in Ans.
1.4.2 Audio Control
Ans does not contain any automatically playing audio content.
1.4.3 Contrast (Minimum)
Content and interactive elements have a contrast ratio greater than 4.5:1, and students can use a dedicated higher contrast mode within tests. Ans also notifies the test maker if a test has elements with insufficient contrast. Inactive tabs in the assignment head have insufficient contrast.
1.4.4 Resize text
A large font mode is available within digital tests, and text can be resized by more than 200% without any loss of functionality.
1.4.5 Images of Text
Ans does not use images of text within the content.
Content and functionality in Ans are not lost at widths of less than 320 CSS pixels, or height of less than 256 pixels.
1.4.11 Non-text Contrast
Interact-able elements have a visible focus style. Focus style in header and content (e.g. flag question button) has insufficient contrast.
1.4.12 Text Spacing
Changing text spacing within a test does not affect the functionality.
1.4.13 Content on Hover or Focus
Focus and tooltips are not very common in Ans, but the ones that are in use are dismissible, hoverable and persistent according to the criteria.
Principle 2 - Operable
All functionality in Ans is accessible through the keyboard, and does not depend on specific timing.
2.1.2 No Keyboard Trap
Ans does not have keyboard traps, focus trapping is only performed within dialogs, which can be exited at any point.
2.1.4 Character Key Shortcuts
Key shortcuts are only active when the input field has focus.
2.2.1 Timing Adjustable
All time limits within Ans, both for making the test and reviewing, are fully configurable by the test maker.
2.2.2 Pause, Stop, Hide
Ans does not show any moving, scrolling or blinking information for more than 5 seconds
2.3.1 Three Flashes or Below Threshold
Ans does not contain any content that flashes more than 3 times in one second.
2.4.1 Bypass Blocks
Initial focus bypasses the page header outside of the main dashboard page.
2.4.2 Page Titled
All pages in Ans have a title describing the content or function of the page. Pages are titled descriptively. Links either describe their functionality, or functionality is clear from context. Focus is visible but focus style is insufficient.
2.4.3 Focus Order
The focus order does not affect functionality within Ans.
2.4.4 Link Purpose (In Context)
Link purpose is stated within the link, or clear from the surrounding context.
2.4.5 Multiple Ways
Institutions, question banks and courses within Ans can be searched for from the Dashboard. Courses, assignments and users can be searched for in the appropriate index pages.
2.4.6 Headings and Labels
Elements within Ans are labeled according to their function.
2.4.7 Focus Visible
See 1.4.11, Focus is visibly marked using a custom style.
2.5.1 Pointer Gestures
Ans does not make use of pointer gestures outside of the drawing question, where this is essential to the functionality.
2.5.2 Pointer Cancellation
Pointer events such as in the drawing, match and hotspot questions all have reversible effects.
2.5.3 Label in Name
The name and label of elements with both match.
2.5.4 Motion Actuation
Motion actuation is not used within Ans.
Principle 3 - Understandable
3.1.1 Language of Page
The site language is present within the HTML element
3.1.2 Language of Parts
Language with Ans matches within the entire page. Test makers can set the language of text content within the test using the HTML editor.
3.2.1 On Focus
Focus changes do not initiate context changes.
3.2.2 On Input
Input changes do not initiate context changes.
3.2.3 Consistent Navigation
Navigation within Ans is consistent across all pages, navigation within a digital test is consistent.
3.2.4 Consistent Identification
Labels and names for components are consistent across the site.
3.3.1 Error Identification
Missing required form fields are marked as such, and the user is notified of invalid input.
3.3.2 Labels or Instructions
Form input fields have labels for the required content.
3.3.3 Error Suggestion
In case of invalid input, the user is given an alert containing the errors.
3.3.4 Error Prevention (Legal, Financial, Data)
User test responses are reversible until the final submission, which requires confirmation from the user.
Principle 4 - Robust
HTML tags are valid across the site.IDs are not unique per page, e.g. my-dialog-content, if multiple dialogs can be present on a page.
4.1.2 Name, Role, Value
The name, role and value of user interface components can be programmatically determined, and states, properties and values can be programmatically set.
4.1.3 Status Messages
Alert and notice are used for the appropriate messages respectively.