Accessibility Support
Out of the box, the Telerik and Kendo UI ColorGradient provides extensive accessibility support and enables users with disabilities to acquire complete control over its features.
The ColorGradient is compliant with the Web Content Accessibility Guidelines (WCAG) 2.2 standards and Section 508 requirements, follows the Web Accessibility Initiative - Accessible Rich Internet Applications (WAI-ARIA) best practices for implementing the keyboard navigation for its component
role, provides options for managing its focus and is tested against the most popular screen readers.
WAI-ARIA
This section lists the selectors, attributes, and behavior patterns supported by the component and its composite elements, if any.
ColorGradient Wrapping Element
Selector | Attribute | Usage |
---|---|---|
.k-colorgradient | role=textbox | The focusable wrapper of the component should be considered a textbox . That signifies it has a value that could be submitted. |
aria-label or aria-labelledby | The component needs an accessible name to be assigned to it. Must also include the currently selected value in the component. | |
aria-invalid=true | Attribute is rendered only when the selected value in the component is not valid against the current validation rules. | |
tabindex=0 | The element must be focusable. | |
.k-colorgradient.k-disabled | aria-disabled=true | Attribute is rendered only when the ColorPalette is disabled. |
Drag handles
All the k-draghandle
elements implement the Slider specification.
Apart from that the HSV draghandle must also cover the following additional requirements:
Selector | Attribute | Usage |
---|---|---|
.k-hsv-draghandle | aria-orientation=undefined | The implicit orientation for the role="slider" must be removed. |
aria-label | Must provide information about the purpose of the slider (for example: "Color well with two-dimensional slider for selecting saturation and lightness") and the currently selected color (for example: "X: 142, Y: 93"). | |
aria-valuetext | Must specify the values on both X and Y axis. |
NumericTextBoxes
The Numeric inputs must implement the NumericTextBox specification.
Here is one additional requirement for those numerics as their visible labels have only a single letter as a tex:
Selector | Attribute | Usage |
---|---|---|
.k-numerictextbox>.k-input-inner | aria-label | Must provide information about the numeric input purpose - the name of the chanel it is aimed at (red chanel , green chanel , blue chanel , or alpha chanel ). |
Managing the Focus
The ColorGradient is a single-tab-stop component. Its inner navigation is activated by pressing the Enter
key. In that case the focus remains trapped within the component elements. The user returns to page navigation by pressing Esc
.
Keyboard Shortcuts
When wrapper is focused
Shortcut | Behavior |
---|---|
Enter | Activates inner ColorGradient navigation. |
Tab | Navigates to the next focusable element on the page. |
Shift + Tab | Navigates to the previous focusable element on the page. |
When inner navigation is activated
Shortcut | Behavior |
---|---|
Esc | Moves focus back to wrapper element. Deactivates inner ColorGradient navigation. |
Tab | Navigates to the next focusable element in the ColorGradient. If current focus is on the last element, moves focus to the first focusable item in the component. |
Shift + Tab | Navigates to the previous focusable element in the ColorGradient. If current focus is on the first element, moves focus to the last focusable item in the component. |
Enter | For button items, ColorGradient executes the currently focused button action. |
Inner elements shortcuts
The inner elements implement the shortcuts for their component type. There are k-draghandle
(Slider) elements and k-numerictextbox
(NumericTextBox) elements.
k-hsv-draghandle
Apart from the default implementation, there is a two-dimensional Slider element (k-hsv-draghandle
) implementing the following arrow keys shortcuts:
Shortcut | Behavior |
---|---|
Arrow Up | Moves slider up by large step. |
Arrow Down | Moves slider down by large step. |
Arrow Left | Moves slider left by large step. |
Arrow Right | Moves slider right by large step. |
Shift + Arrow Up | Moves slider up by small step. |
Shift + Arrow Down | Moves slider down by small step. |
Shift + Arrow Left | Moves slider left by small step. |
Shift + Arrow Right | Moves slider right by small step. |
Testing
The ColorGradient has been extensively tested automatically with axe-core and manually with the most popular screen readers.
Screen Readers
The ColorGradient has been tested with the following screen readers and browsers combinations:
Environment | Tool |
---|---|
Firefox | NVDA |
Chrome | JAWS |
Microsoft Edge | JAWS |