Dozens of reusable components are built into Bootstrap to provide navigation, alerts, popovers, and much more.
Building on the button group styles and markup, we can easily create a split button. Split buttons feature a standard action on the left and a dropdown toggle on the right with contextual links.
Similar to a button group, our markup uses regular button markup, but with a handful of additions to refine the style and support Bootstrap's dropdown jQuery plugin.
<div class="btn-group"> <a class="btn" href="#">Action</a> <a class="btn dropdown-toggle" data-toggle="dropdown" href="#"> <span class="caret"></span> </a> <ul class="dropdown-menu"> <!-- dropdown menu links --> </ul> </div>
Ultra simplistic and minimally styled pagination inspired by Rdio, great for apps and search results. The large block is hard to miss, easily scalable, and provides large click areas.
Links are customizable and work in a number of circumstances with the right class. .disabled
for unclickable links and .active
for current page.
Add either of two optional classes to change the alignment of pagination links: .pagination-centered
and .pagination-right
.
The default pagination component is flexible and works in a number of variations.
Wrapped in a <div>
, pagination is just a <ul>
.
<div class="pagination"> <ul> <li><a href="#">Prev</a></li> <li class="active"> <a href="#">1</a> </li> <li><a href="#">2</a></li> <li><a href="#">3</a></li> <li><a href="#">4</a></li> <li><a href="#">Next</a></li> </ul> </div>
The pager component is a set of links for simple pagination implemenations with light markup and even lighter styles. It's great for simple sites like blogs or magazines.
By default, the pager centers links.
<ul class="pager"> <li> <a href="#">Previous</a> </li> <li> <a href="#">Next</a> </li> </ul>
By default, Bootstrap's thumbnails are designed to showcase linked images with minimal required markup.
With a bit of extra markup, it's possible to add any kind of HTML content like headings, paragraphs, or buttons into thumbnails.
Thumbnails (previously .media-grid
up until v1.4) are great for grids of photos or videos, image search results, retail products, portfolios, and much more. They can be links or static content.
Thumbnail markup is simple—a ul
with any number of li
elements is all that is required. It's also super flexible, allowing for any type of content with just a bit more markup to wrap your contents.
Lastly, the thumbnails component uses existing grid system classes—like .span2
or .span3
—for control of thumbnail dimensions.
As mentioned previously, the required markup for thumbnails is light and straightforward. Here's a look at the default setup for linked images:
<ul class="thumbnails"> <li class="span3"> <a href="#" class="thumbnail"> <img src="http://placehold.it/210x150" alt=""> </a> </li> ... </ul>
For custom HTML content in thumbnails, the markup changes slightly. To allow block level content anywhere, we swap the <a>
for a <div>
like so:
<ul class="thumbnails"> <li class="span3"> <div class="thumbnail"> <img src="http://placehold.it/210x150" alt=""> <h5>Thumbnail label</h5> <p>Thumbnail caption right here...</p> </div> </li> ... </ul>
With Bootstrap 2, we've simplified the base class: .alert
instead of .alert-message
. We've also reduced the minimum required markup—no <p>
is required by default, just the outter <div>
.
For a more durable component with less code, we've removed the differentiating look for block alerts, messages that come with more padding and typically more text. The class also has changed to .alert-block
.
Bootstrap comes with a great jQuery plugin that supports alert messages, making dismissing them quick and easy.
Wrap your message and an optional close icon in a div with simple class.
<div class="alert"> <a class="close">×</a> <strong>Warning!</strong> Best check yo self, you’re not looking too good. </div>
Easily extend the standard alert message with two optional classes: .alert-block
for more padding and text controls and .alert-heading
for a matching heading.
Best check yo self, you’re not looking too good. Nulla vitae elit libero, a pharetra augue. Praesent commodo cursus magna, vel scelerisque nisl consectetur et.
<div class="alert alert-block"> <a class="close">×</a> <h4 class="alert-heading">Warning!</h4> Best check yo self, you’re not... </div>
<div class="alert alert-error"> ... </div>
<div class="alert alert-success"> ... </div>
<div class="alert alert-info"> ... </div>
Default progress bar with a vertical gradient.
<div class="progress"> <div class="bar" style="width: 60%;"></div> </div>
Uses a gradient to create a striped effect.
<div class="progress info striped"> <div class="bar" style="width: 20%;"></div> </div>
Takes the striped example and animates it.
<div class="progress danger striped active"> <div class="bar" style="width: 40%;"></div> </div>
Progress bars utilize some of the same classes as buttons and alert messages for quick styling.
.info
.success
.danger
Alternatively, you can customize the LESS files and roll your own colors and sizes.
Progress bars use CSS3 transitions, so if you dynamically adjust the width via javascript, it will smoothly resize.
If you use the .active
class, your .striped
progress bars will animate the stripes left to right.
Progress bars use CSS3 gradients, transitions, and animations to achieve all their effects. These features are not supported in IE7-8 or older versions of Firefox.
Opera does not support animations at this time.