| layout | docs |
|---|---|
| title | Progress |
| description | Documentation and examples for using Bootstrap progress bars. |
| group | components |
Use our custom progress component for displaying simple or complex progress bars. We don't use the HTML5 <progress> element, ensuring you can stack progress bars, animate them, and place text labels over them.
- Will be replaced with the ToC, excluding the "Contents" header {:toc}
Progress components are built with two HTML elements, some CSS to set the width, and a few attributes.
- We use the
.progressas a wrapper to indicate the max value of the progress bar. - We use the inner
.progress-barto indicate the progress so far. - The
.progress-barrequires an inline style, utility class, or custom CSS to set their width. - The
.progress-baralso requires someroleandariaattributes to make it accessible.
Put that all together, and you have the following examples.
{% example html %}
Bootstrap provides a handful of [utilities for setting width]({{ site.baseurl }}/utilities/sizing/). Depending on your needs, these may help with quickly configuring progress.
{% example html %}
Customize the appearance of your progress bars with custom CSS, background utilities, stripes, and more.
Add labels to your progress bars by placing text within the .progress-bar.
{% example html %}
We only set a height value on the .progress-bar, so if you change that value the outer .progress will automatically resize accordingly.
{% example html %}
Use background utility classes to change the appearance of individual progress bars.
{% example html %}
Include multiple progress bars in a progress component if you need.
{% example html %}
Add .progress-bar-striped to any .progress-bar to apply a stripe via CSS gradient over the progress bar's background color.
{% example html %}
The striped gradient can also be animated. Add .progress-bar-animated to .progress-bar to animate the stripes right to left via CSS3 animations.
Animated progress bars don't work in Opera 12—as they don't support CSS3 animations.
{% highlight html %}