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 Intermediate
Section 508 Support Yes
Screen Reader Support Intermediate
Right-To-Left Support Yes
Color Contrast Yes
Mobile Device Support Yes
Keyboard Navigation Support Yes
Accessibility Checker Validation Yes
Axe-core Accessibility Validation Yes
Yes - All features of the component meet the requirement.
Intermediate - Some features of the component do not meet the requirement.
No - The component does not meet the requirement.

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.

See also