Accessibility in React Ribbon component
24 Jan 202411 minutes to read
The Ribbon component followed the accessibility guidelines and standards, including ADA, Section 508, WCAG 2.2 standards, and WCAG roles that are commonly used to evaluate accessibility.
The accessibility compliance for the Ribbon component is outlined below.
Accessibility Criteria | Compatibility |
---|---|
WCAG 2.2 Support | |
Section 508 Support | |
Screen Reader Support | |
Right-To-Left Support | |
Color Contrast | |
Mobile Device Support | |
Keyboard Navigation Support | |
Accessibility Checker Validation | |
Axe-core Accessibility Validation |
WAI-ARIA attributes
The Ribbon component followed the WAI-ARIA patterns to meet the accessibility. The following ARIA attributes are used in the Ribbon component:
Attributes | Purpose |
---|---|
role=tablist |
Used to identify the element that serves as the container for a set of tabs. |
role=tab |
Indicates an interactive element within a tablist that, when activated, displays its associated tab panel. |
role=tabpanel |
Specifies the role for the content associated with an active tab, describing its role in presenting the active content. |
role=button |
Represents a clickable element that trigger a response when activated by the user. |
role=menu |
Represents an item that have sub menu. |
role=menuitem |
Indicates an option in a set of choices within a menu. |
role=combobox |
Identifies an element as an input that controls another element, commonly used for dropdowns. |
role=option |
Used for selectable items in a combobox. |
role=gridcell |
Specified as gridcell for the tiles in the color palette. |
aria-orientation |
Indicates the element’s orientation as horizontal, vertical, or unknown/ambiguous. |
aria-selected |
Indicates the current “selected” state of various widgets. |
aria-labelledby |
Sets to the Tab content element to indicates the associated Tab header for the content. |
aria-controls |
Indicates the associated tabpanel for the header by setting the attribute on Tab items. |
aria-haspopup |
Indicates availability and type of interactive popup triggered by the element it’s set on. |
aria-disabled |
Indicates that the element is perceivable but disabled, making it not editable or operable. |
aria-expanded |
Indicates whether a component is expanded or collapsed, set on the respective element. |
aria-label |
Defines a string value that labels an interactive element for accessibility. |
aria-checked |
Indicates the current “checked” state of checkboxes, radio buttons, and other widgets. |
aria-owns |
Identifies an element or elements, establishing a relationship when DOM hierarchy can’t represent it. |
aria-readonly |
Indicates that the element is not editable but is otherwise operable. |
aria-activedescendent |
Identifies the currently active element when focus is on a combobox, textbox, group, or application. |
aria-autocomplete |
Indicates whether inputting text could trigger display of predictions and specifies how predictions will be presented for a combobox, searchbox, or textbox. |
Keyboard interaction
The Ribbon component followed the keyboard interaction guideline, making it easy for people who use assistive technologies (AT) and those who completely rely on keyboard navigation. The following keyboard shortcuts are supported by the Ribbon component.
Press | To do this |
---|---|
Ribbon Tab | |
Tab | To focus the ribbon tabs. |
Right Arrow | Moves focus to the next Tab. |
Left Arrow | Moves focus to the previous Tab. |
Enter / Space | To select the currently focussed ribbon tab. |
Ribbon Items | |
Tab | To focus the ribbon Items. |
Right Arrow | Focuses the next item. |
Left Arrow | Focuses the previous item. |
Enter / Space | To select the currently focussed ribbon item. |
Ribbon Dropdown Items/ Ribbon Split button | |
Esc | Closes the popup. |
Enter / Space | Opens the popup, or activates the highlighted item and closes the popup. |
Arrow Up | Focuses the next item. |
Arrow Down | Focuses the previous item. |
Alt + Arrow Up | Closes the popup. |
Alt + Arrow Down | Opens the popup |
Ribbon File menu | |
Tab | To focus the ribbon file menu. |
Esc | Closes the popup. |
Enter | Opens the popup, or activates the highlighted item and closes the popup. |
Arrow Up | Focuses the previous action item. |
Arrow Down | Focuses the next action item. |
Alt + Arrow Down | Opens the popup |
Ribbon Combobox | |
Arrow Down | Selects the first item in the ComboBox when no item selected. Otherwise, selects the item next to the currently selected item. |
Arrow Up | Selects the item previous to the currently selected one. |
Page Down | Scrolls down to the next page and selects the first item when popup list opens. |
Page Up | Scrolls up to the previous page and selects the first item when popup list opens. |
Enter | Selects the focused item and popup list closes when it is in open state. |
Tab | Focuses on the next TabIndex element on the page when the popup is closed. Otherwise, closes the popup list and remains the focus of the component. |
Shift + tab | Focuses on the previous TabIndex element on the page when the popup is closed. Otherwise, closes the popup list and remains the focus of the component. |
Alt + Down | Open the popup list |
Alt + Up | Close the popup list |
Esc(Escape) | Closes the popup list when it is in an open state and the currently selected item remains the same. |
Home | Cursor moves to before of first character in input |
End | Cursor moves to next of last character in input |
Ensuring accessibility
The Ribbon component’s accessibility levels are ensured through an accessibility-checker and axe-core software tools during automated testing.
The accessibility compliance of the Ribbon component is shown in the following sample. Open the sample in a new window to evaluate the accessibility of the Ribbon component with accessibility tools.