Loading patterns indicate that a process is in progress. There are four variants; Skeleton states, Full-screen loading, Inline loading and Load more.
Full-screen loading indicates that the entire website or application is processing and confirms that the system is working.
Add a mask behind the loading spinner to make it prominent.
Add a short, clear message that tells the user what’s happening, e.g. ‘Loading data. Please wait.’
If loading takes longer than expected, allow users to report an issue or exit the page.
Inline loading shows an action is processing within a component.
Allow interaction with other elements while loading is in progress, e.g. dismissing a notification.
Consider how the size, placement and animation of the loading indicator may distract users.
Load more indicates the progressive loading of content, elements or data.
Load more is not required if all the content can be presented at once.
Position load more in close proximity to the element that is loading.
Use a specific action on the button label, e.g. ‘Load more’.
Consider the amount of content that is loaded per batch, to avoid overwhelming users.
Skeleton states are simplified versions of the UI with placeholders that indicate where content will go.
Use motion (shimmer effect) to decrease the perceived load time.
Make elements visible as soon as they are loaded.
Ensure the appearance of skeleton objects matches the structure of existing content.
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.
Ensure screen readers can announce when loading begins or completes.
Ensure the colour contrast is 3:1, in accordance with WCAG guidelines.
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.
Is this page useful for you?
Your feedback helps to improve our documentation.