Shell DS components are programmatically determinable with appropriate semantic markup and are designed to meet colour
contrast requirements. If you’re not using Shell DS code, you will need to cover the accessibility considerations for
each component in this pattern.
Assistive technologies
Modal components include a WAI ARIA role="dialog" and aria-modal="true" so that assistive technologies know that the primary window underneath the current dialog is inert.
Legibility
Dialog should fill 100% of the screen to make the content easier to read when displayed on small screens.
Obscuring the inert background window also hides background movement on some mobile devices when scrolling content inside the dialog.
Focus
When the modal dialog opens, focus must be shifted to the dialog window.
Focus must be maintained within the modal dialog window until the user presses the close button or uses the esc key to close the dialog window. No matter how many times tab or shift+tab are pressed, the focus loops through the interactive elements of the modal dialog until it is closed.
When the modal is closed, the focus should be maintained by returning to the interaction or location that launched the modal.
Screen readers
A dialog window must be contextually identified for screen reader users, with a title/header using aria-labelledby.
Every effort has been made to ensure that the Shell Design System follows accessibility best practice.
The Shell DS React framework incorporates keyboard operation to support the widest variety of assistive technologies and devices. For any future frameworks other than React, accessibility will need to be reviewed.
Help us to help you by contacting the Accessibility team for support and information regarding any questions relating to accessibility.