Progress Bar
Provide up-to-date feedback on the progress of a workflow or action with simple yet flexible progress bars.
General
Example
Default progress bar
<div class="progress">
<div
class="progress-bar"
role="progressbar"
style="width: 25%"
aria-valuenow="25"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
</div>
<br/>
<div class="progress">
<div
class="progress-bar bg-secondary"
role="progressbar"
style="width: 50%"
aria-valuenow="50"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
</div>
<br/>
<div class="progress">
<div
class="progress-bar bg-success"
role="progressbar"
style="width: 75%"
aria-valuenow="75"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
</div>
<br/>
<div class="progress">
<div
class="progress-bar bg-warning"
role="progressbar"
style="width: 25%"
aria-valuenow="25"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
</div>
<br/>
<div class="progress">
<div
class="progress-bar bg-danger"
role="progressbar"
style="width: 50%"
aria-valuenow="50"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
</div>
<br/>
<div class="progress">
<div
class="progress-bar bg-info"
role="progressbar"
style="width: 75%"
aria-valuenow="75"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
</div>
<br/>
<div class="progress">
<div
class="progress-bar bg-dark"
role="progressbar"
style="width: 25%"
aria-valuenow="25"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
</div>
With label
<div class="progress">
<div
class="progress-bar"
role="progressbar"
style="width: 50%"
aria-valuenow="50"
aria-valuemin="0"
aria-valuemax="100"
>
50%
</div>
</div>
Striped progress bar
<div class="progress">
<div
class="progress-bar progress-bar-striped"
role="progressbar"
style="width: 50%"
aria-valuenow="50"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
</div>
Animated progress bar
<div class="progress">
<div
class="progress-bar progress-bar-striped progress-bar-animated"
role="progressbar"
style="width: 50%"
aria-valuenow="50"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
</div>
Stacked progress bar
<div class="progress">
<div
class="progress-bar"
role="progressbar"
style="width: 15%"
aria-valuenow="15"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
<div
class="progress-bar bg-success"
role="progressbar"
style="width: 30%"
aria-valuenow="30"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
<div
class="progress-bar bg-info"
role="progressbar"
style="width: 20%"
aria-valuenow="20"
aria-valuemin="0"
aria-valuemax="100"
>
</div>
</div>
Anatomy
- Indicator: Tells the users how far along in a process they are in.
Usage guidelines
Progress bar should be used:
- When you want to show users where they are in a process.
- When a user is uploading or downloading a file.
Progress bar should not be used:
- As an indicator when users are navigating from page to page.
Usability guidelines
Keeps progress bars moving
This allows users to know that their task is progressing. Users may
associate a stationary indicator as a stalled process.
Use consistent progress bars
Do use one type of indicator bar style and not switch between as
this may cause confusion to the user.
Progress Bar design tokens
$progress-height: 1rem !default;
$progress-font-size: $font-size-base * 0.75 !default;
$progress-bg: $gray-200 !default;
$progress-border-radius: $border-radius !default;
$progress-box-shadow: $box-shadow-inset !default;
$progress-bar-color: $white !default;
$progress-bar-bg: $primary !default;
$progress-bar-animation-timing: 1s linear infinite !default;
$progress-bar-transition: width 0.6s ease !default;