The progress bar visually represents progress of a particular process. It shows how much of the task has been completed and how much is remaining.
A Title
Doing something...
This component can be used to visually represent the completion of a task, such as importing or uploading files or when a process time can be calculated and takes longer than 10 seconds.
Dos
- Give users an indication of how much of the task has completed and how much is left
- Display the file being uploaded to reinforce that action a user is taking
Don'ts
- Use a progress bar as a placeholder to indicate page, section or content loading, use a skeleton loader or loading spinner instead
- If the progress bar calls for descriptions, these should be written as short sentence fragments
- Written in sentence case of the processes
- The copy should be concise and human sounding
- When the process is complete "Done!" should be in the description
- Three dots should be present at the end of each statement to help indicate progress e.g., "Extracting the headers…"
Title.xls
Processing
Title.xls
Extracting headers...
Title.xls
Mapping your fields...
Title.xls
Done!
The progress bar can be used with the file name and description text of the processes, just the filename, or just the progress bar itself. Use the progress bar alone when a filename and processes are unknown.
Title.xls
1.3.1 Info and Relationships A
For screen reader users, a progress bar will inform the user how far they are into a certain process
Via
- We want to use the HTML <Progress> element. Within this element, there should be:
- role="progressbar"
- aria-valuemin="0"
- aria-valuemax="100"
- aria-label="description of what the progress bar is for"
- Keep them updated with the status of a process
- Reads: "percent/value that is currently given to progress bar"
- On completion can give an update such as "complete"
Keyboard
The progress bar should be in the tax index so that users can get the information when in focus, even if the information is announced automatically.