Button groups can also function as radios, where only one button may be active, or checkboxes, where any number of buttons may be active. View the Javascript docs for that.
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.
In some cases—like mobile—dropdown menus will extend outside the viewport. You need to resolve the alignment manually or with custom javascript.
Split button dropdowns
Overview and examples
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.
Dropdown menus can also be toggled from the bottom up by adding a single class to the immediate parent of .dropdown-menu. It will flip the direction of the .caret and reposition the menu itself to move from the bottom up instead of top down.
Bring your tabs to life with a simple plugin to toggle between content via tabs. Bootstrap integrates tabbable tabs in four styles: top (default), right, bottom, and left.
Changing between them is easy and only requires changing very little markup.
Fade in tabs
To make tabs fade in, add .fade to each .tab-pane.
Requires jQuery plugin
All tabbable tabs are powered by our lightweight jQuery plugin. Read more about how to bring tabbable tabs to life on the javascript docs page.
When you affix the navbar, remember to account for the hidden area underneath. Add 40px or more of padding to the <body>. Be sure to add this after the core Bootstrap CSS and before the optional responsive CSS.
Brand name
A simple link to show your brand or project name only requires an anchor tag.
<a class="brand" href="#">
Project name
</a>
Forms in navbar
To properly style and position a form within the navbar, add the appropriate classes as shown below. For a default form, include .navbar-form and either .pull-left or .pull-right to properly align it.
Depending on the amount of content in your topbar, you might want to implement the responsive options. To do so, wrap your nav content in a containing div, .nav-collapse.collapse, and add the navbar toggle button, .btn-navbar.
<div class="navbar">
<div class="navbar-inner">
<div class="container">
<!-- .btn-navbar is used as the toggle for collapsed navbar content -->
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<!-- Be sure to leave the brand out there if you want it shown -->
<a class="brand" href="#">Project name</a>
<!-- Everything you want hidden at 940px or less, place within here -->
<div class="nav-collapse">
<!-- .nav, .navbar-search, .navbar-form, etc -->
</div>
</div>
</div>
</div>
Wrap strings of text in a <.navbar-text>, usually on a <p> tag for proper leading and color.
Breadcrumbs
Why use them
Breadcrumb navigation is used as a way to show users where they are within an app or a site, but not for primary navigation. Keep their use sparse and succinct to be most effective.
Examples
A single example shown as it might be displayed across multiple pages.
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.
Stateful page links
Links are customizable and work in a number of circumstances with the right class. .disabled for unclickable links and .active for current page.
Flexible alignment
Add either of two optional classes to change the alignment of pagination links: .pagination-centered and .pagination-right.
Examples
The default pagination component is flexible and works in a number of variations.
The pager component is a set of links for simple pagination implementations with light markup and even lighter styles. It's great for simple sites like blogs or magazines.
Optional disabled state
Pager links also use the general .disabled class from the pagination.
Badges are small, simple components for displaying an indicator or count of some sort. They're commonly found in email clients like Mail.app or on mobile apps for push notifications.
Available classes
Name
Example
Markup
Default
1
<span class="badge">1</span>
Success
2
<span class="badge badge-success">2</span>
Warning
4
<span class="badge badge-warning">4</span>
Important
6
<span class="badge badge-important">6</span>
Info
8
<span class="badge badge-info">8</span>
Inverse
10
<span class="badge badge-inverse">10</span>
Typographic components Page header and hero unit for segmenting content
Hero unit
Bootstrap provides a lightweight, flexible component called a hero unit to showcase content on your site. It works well on marketing and content-heavy sites.
A simple shell for an h1 to appropriately space out and segment sections of content on a page. It can utilize the h1's default small, element as well most other components (with additional styles).
Thumbnails Grids of images, videos, text, and more
Default thumbnails
By default, Bootstrap's thumbnails are designed to showcase linked images with minimal required markup.
Highly customizable
With a bit of extra markup, it's possible to add any kind of HTML content like headings, paragraphs, or buttons into thumbnails.
Thumbnail label
Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.
Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.
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.
Simple, flexible markup
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.
Uses grid column sizes
Lastly, the thumbnails component uses existing grid system classes—like .span2 or .span3—for control of thumbnail dimensions.
The markup
As mentioned previously, the required markup for thumbnails is light and straightforward. Here's a look at the default setup for linked images:
Explore all your options with the various grid classes available to you. You can also mix and match different sizes.
Alerts Styles for success, warning, and error messages
Lightweight defaults
Rewritten base class
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 outer <div>.
Single alert message
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.
Goes great with javascript
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.
Warning! Best check yo self, you're not looking too good.
<div class="alert">
<button class="close" data-dismiss="alert">×</button>
<strong>Warning!</strong> Best check yo self, you're not looking too good.
</div>
Heads up! iOS devices require an href="#" for the dismissal of alerts. Be sure to include it and the data attribute for anchor close icons. Alternatively, you may use a <button> element with the data attribute, which we have opted to do for our docs. When using <button>, you must include type="button" or your forms may not submit.
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.
Warning!
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" data-dismiss="alert" href="#">×</a>
<h4 class="alert-heading">Warning!</h4>
Best check yo self, you're not...
</div>
Contextual alternatives Add optional classes to change an alert's connotation
Error or danger
Oh snap! Change a few things up and try submitting again.
<div class="alert alert-error">
...
</div>
Success
Well done! You successfully read this important alert message.
<div class="alert alert-success">
...
</div>
Information
Heads up! This alert needs your attention, but it's not super important.
<div class="alert alert-info">
...
</div>
Progress bars For loading, redirecting, or action status
Progress bars use some of the same button and alert classes for consistent styles.
Striped bars
Similar to the solid colors, we have varied striped progress bars.
Behavior
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 .progress-striped progress bars will animate the stripes left to right.
Browser support
Progress bars use CSS3 gradients, transitions, and animations to achieve all their effects. These features are not supported in IE7-9 or older versions of Firefox.
Opera and IE do not support animations at this time.
Miscellaneous Lightweight utility components
Wells
Use the well as a simple effect on an element to give it an inset effect.
Look, I'm in a well!
<div class="well">
...
</div>
Optional classes
Control padding and rounded corners with two optional modifier classes.
<div class="well well-large">
...
</div>
<div class="well well-small">
...
</div>
Close icon
Use the generic close icon for dismissing content like modals and alerts.
<button class="close">×</button>
iOS devices require an href="#" for click events if you rather use an anchor.
<a class="close" href="#">×</a>
Helper classes
Simple, focused classes for small display or behavior tweaks.