Progress bars

Progress bars are used to provide feedback on an action status and inform users of the current progress. Although seemingly small interface elements, they are extremely hepful in managing users' expectations and preventing them from abandoning a process they have initiated.

Default markup

To create a default progress bar, add a .progress class to a <div> element. Thanks to that, you will be able to notify users how long they have to wait for a process to complete.

<div class="progress">
  <div class="progress-bar" style="width: 38%" role="progressbar" aria-valuenow="38" aria-valuemin="0" aria-valuemax="100" aria-label="38% Complete">
    <span class="visually-hidden">38% Complete</span>
  </div>
</div>

Progress size

Using Bootstrap’s typical naming structure, you can create a standard progress bar or scale it up or down to different sizes based on what’s needed.

<div class="progress progress-sm">...</div>

Look at the example below to see how it works:

Indeterminate progress

You can create a progress bar which shows indeterminate progress by adding .progress-bar-indeterminate to the .progress-bar element.

Native progress element

You can also use native HTML5 <progress> element. It is a great way to create a progress bar without the need for additional HTML elements.

<progress class="progress progress-sm" value="15" max="100" />

This is how it looks like:

Progress color

You can change the color of the progress bar by adding a color class to the .progress-bar element. You can use the color classes like .bg-primary, .bg-success, etc. to change the color of the progress bar.

Full list of available colors can be found here.

Multiple progress bars

You can stack multiple progress bars on top of each other to create a visually appealing design. This can be done by adding multiple .progress elements inside a .progress-stacked container.

<div class="progress-stacked">
  <div class="progress">...</div>
</div>

This is how it looks like:

Striped progress

You can create a striped progress bar by adding the .progress-bar-striped class to the .progress-bar element.

<div class="progress">
  <div class="progress-bar progress-bar-striped progress-bar-animated" style="width: 60%"></div>
</div>

This is how it looks like:

Progress background

By using a progress bar component as a background element, designers can create a dynamic and engaging visual experience for users. For example, the progress bar could be used to represent the completion of a long-term goal or project, such as a fundraising campaign or construction project. As users interact with the page, the progress bar could gradually fill up, creating a sense of momentum and progress.

<div class="progressbg">
  <div class="progress progressbg-progress">
    <div class="progress-bar bg-primary-lt" style="width: 65%"></div>
  </div>
  <div class="progressbg-text">Poland</div>
  <div class="progressbg-value">65%</div>
</div>

Thanks to this you can create a nice looking statistics section:

Do you have a question? ask the community
Do you see a bug? open an issue on GitHub
Do you like Tabler? tweet about it!
Support Tabler's development: Github Sponsors
illustrations banner imageillustrations banner image dark
65 sleek illustrations for your startup's visual identity.