Home >>Bootstrap Tutorial >Bootstrap Progress Bars
A progress bar is used to provide the feedback on the progress of a process on a computer to the user. You can add the class .progress in parent <div> element and add the inner class .progress-bar to its child element. That indicates how much is complete and how much more a user is to go. By default the progress bar color is blue.
These are the following types of progress bar listed below:
For creating basic progress bar you have to use class .progress in parent <div> element, use inner class .progress-bar inside to the child element.
Let's take an example of basic progress bar:
<!DOCTYPE html> <html> <head> <title>Bootstrap Progress bar</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script> </head> <body> <div class="container"> <div class="progress"> <div class="progress-bar" style="width:80%"></div> </div> <br> <div class="progress"> <div class="progress-bar" style="width:60%"></div> </div> </div> </body> </html>
Progress bar labels is used to show text inside the progress bar in numeric or text.
Let's take an example of progress bar Labels:
<!DOCTYPE html> <html> <head> <title>Bootstrap Progress bar</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script> </head> <body> <div class="container"> <div class="progress"> <div class="progress-bar" style="width:80%">80%</div> </div> <br> <div class="progress"> <div class="progress-bar" style="width:60%">60%</div> </div> </div> </body> </html>
To change the appearance of the progress bar you have to use the contextual background classes to its color. Use class .bg-* (* add contextual color of bootstrap).
Let's take an example of colored progress bar:
<!DOCTYPE html> <html> <head> <title>Bootstrap Progress bar</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script> </head> <body> <div class="container"> <h2>Colored Progress Bars</h2> <div class="progress"> <div class="progress-bar" style="width:10%"></div> </div><br> <div class="progress"> <div class="progress-bar bg-danger" style="width:20%"></div> </div><br> <div class="progress border"> <div class="progress-bar bg-light" style="width:30%"></div> </div><br> <div class="progress"> <div class="progress-bar bg-success" style="width:40%"></div> </div><br> <div class="progress"> <div class="progress-bar bg-info" style="width:50%"></div> </div><br> <div class="progress"> <div class="progress-bar bg-warning" style="width:60%"></div> </div><br> <div class="progress"> <div class="progress-bar bg-secondary" style="width:70%"></div> </div><br> <div class="progress border"> <div class="progress-bar bg-white" style="width:80%"></div> </div><br> <div class="progress"> <div class="progress-bar bg-dark" style="width:90%"></div> </div> </div> </body> </html>
By default the height of the progress bar is 16px. If you want to change, use CSS height value in class .progress. After doing this class .progress-bar will automatically resize.
Let's take an example of progress bar height:
<!DOCTYPE html> <html> <head> <title>Bootstrap Progress bar</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script> </head> <body> <div class="container"> <h2>Progress Bar Height</h2> <div class="progress" style="height:10px"> <div class="progress-bar" style="width:40%;"></div> </div> <br> <div class="progress" style="height:20px"> <div class="progress-bar" style="width:50%;"></div> </div> <br> <div class="progress" style="height:30px"> <div class="progress-bar" style="width:60%;"></div> </div> </div> </body></html>
Multiple progress bar can be stacked in single progress bar using the class .progress-bar multiple times in a single progress.
Let's take an example of multiple progress bar:
<!DOCTYPE html> <html> <head> <title>Bootstrap Progress bar</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script> </head> <body> <div class="container"> <h2>Multiple Progress Bars</h2> <div class="progress"> <div class="progress-bar bg-success" style="width:40%"> 40% </div> <div class="progress-bar bg-secondary" style="width:15%"> 10% </div> <div class="progress-bar bg-warning" style="width:25%"> 20% </div> </div> </div> </body> </html>
It is used to show strips in the progress bar. Inside the <div> element add class .progress and in the same <div> element add class .progress-bar-striped.
Let's take an example of striped progress bar:
<!DOCTYPE html> <html> <head> <title>Bootstrap Progress bar</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script> </head> <body> <div class="container"> <h2>Striped Progress Bars</h2> <div class="progress"> <div class="progress-bar progress-bar-striped" style="width:20%"></div> </div> <br> <div class="progress"> <div class="progress-bar bg-warning progress-bar-striped" style="width:30%"></div> </div> <br> <div class="progress"> <div class="progress-bar bg-danger progress-bar-striped" style="width:40%"></div> </div><br> <div class="progress"> <div class="progress-bar bg-success progress-bar-striped" style="width:50%"></div> </div> <br> <div class="progress"> <div class="progress-bar bg-info progress-bar-striped" style="width:60%"></div> </div> </div> </body> </html>
To create an animated progress-bar, you can add class .progress-bar-animated to .progress-bar. By default it is animated from right to left.
Let's take an example of animated progress bar:
<!DOCTYPE html> <html> <head> <title>Bootstrap Progress bar</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script> </head> <body> <div class="container"> <h2>Animated Progress Bar</h2> <div class="progress"> <div class="progress-bar progress-bar-striped progress-bar-animated bg-danger" style="width:50%"></div> </div><br> <div class="progress"> <div class="progress-bar progress-bar-striped progress-bar-animated" style="width:40%"></div> </div><br> <div class="progress"> <div class="progress-bar progress-bar-striped progress-bar-animated bg-success" style="width:30%"></div> </div> </div> </body> </html>