{{_i}}Components{{/i}}

{{_i}}Dozens of reusable components are built into Bootstrap to provide navigation, alerts, popovers, and much more.{{/i}}

{{_i}}Button groups{{/i}}

{{_i}}Use button groups to join multiple buttons together as one composite component. Build them with a series of <a> or <button> elements.{{/i}}

{{_i}}Best practices{{/i}}

{{_i}}We recommend the following guidelines for using button groups and toolbars:{{/i}}

  • {{_i}}Always use the same element in a single button group, <a> or <button>.{{/i}}
  • {{_i}}Don't mix buttons of different colors in the same button group.{{/i}}
  • {{_i}}Use icons in addition to or instead of text, but be sure include alt and title text where appropriate.{{/i}}

{{_i}}Related Button groups with dropdowns (see below) should be called out separately and always include a dropdown caret to indicate intended behavior.{{/i}}

{{_i}}Default example{{/i}}

{{_i}}Here's how the HTML looks for a standard button group built with anchor tag buttons:{{/i}}

<div class="btn-group">
  <a class="btn" href="#">1</a>
  <a class="btn" href="#">2</a>
  <a class="btn" href="#">3</a>
</div>

{{_i}}Toolbar example{{/i}}

{{_i}}Combine sets of <div class="btn-group"> into a <div class="btn-toolbar"> for more complex components.{{/i}}

1 2 3 4
5 6 7
8
<div class="btn-toolbar">
  <div class="btn-group">
    ...
  </div>
</div>

{{_i}}Checkbox and radio flavors{{/i}}

{{_i}}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.{{/i}}

{{_i}}Get the javascript »{{/i}}


{{_i}}Heads up{{/i}}

{{_i}}CSS for button groups is in a separate file, button-groups.less.{{/i}}

{{_i}}Example markup{{/i}}

{{_i}}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.{{/i}}

<div class="btn-group">
  <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
    {{_i}}Action{{/i}}
    <span class="caret"></span>
  </a>
  <ul class="dropdown-menu">
    <!-- {{_i}}dropdown menu links{{/i}} -->
  </ul>
</div>

{{_i}}Example markup{{/i}}

{{_i}}We expand on the normal button dropdowns to provide a second button action that operates as a separate dropdown trigger.{{/i}}

<div class="btn-group">
  <a class="btn" href="#">{{_i}}Action{{/i}}</a>
  <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
    <span class="caret"></span>
  </a>
  <ul class="dropdown-menu">
    <!-- {{_i}}dropdown menu links{{/i}} -->
  </ul>
</div>

{{_i}}Multicon-page pagination{{/i}}

{{_i}}When to use{{/i}}

{{_i}}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.{{/i}}

{{_i}}Stateful page links{{/i}}

{{_i}}Links are customizable and work in a number of circumstances with the right class. .disabled for unclickable links and .active for current page.{{/i}}

{{_i}}Flexible alignment{{/i}}

{{_i}}Add either of two optional classes to change the alignment of pagination links: .pagination-centered and .pagination-right.{{/i}}

{{_i}}Examples{{/i}}

{{_i}}The default pagination component is flexible and works in a number of variations.{{/i}}

{{_i}}Markup{{/i}}

{{_i}}Wrapped in a <div>, pagination is just a <ul>.{{/i}}

<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>

{{_i}}Pager{{/i}} {{_i}}For quick previous and next links{{/i}}

{{_i}}About pager{{/i}}

{{_i}}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.{{/i}}

{{_i}}Default example{{/i}}

{{_i}}By default, the pager centers links.{{/i}}

<ul class="pager">
  <li>
    <a href="#">{{_i}}Previous{{/i}}</a>
  </li>
  <li>
    <a href="#">{{_i}}Next{{/i}}</a>
  </li>
</ul>

{{_i}}Aligned links{{/i}}

{{_i}}Alternatively, you can align each link to the sides:{{/i}}

<ul class="pager">
  <li class="previous">
    <a href="#">{{_i}}&larr; Older{{/i}}</a>
  </li>
  <li class="next">
    <a href="#">{{_i}}Newer &rarr;{{/i}}</a>
  </li>
</ul>
{{_i}}Labels{{/i}} {{_i}}Markup{{/i}}
{{_i}}Default{{/i}} <span class="label">{{_i}}Default{{/i}}</span>
{{_i}}Success{{/i}} <span class="label label-success">{{/_i}}Success{{/i}}</span>
{{_i}}Warning{{/i}} <span class="label label-warning">{{_i}}Warning{{/i}}</span>
{{_i}}Important{{/i}} <span class="label label-important">{{_i}}Important{{/i}}</span>
{{_i}}Info{{/i}} <span class="label label-info">{{_i}}Info{{/i}}</span>

{{_i}}Hero unit{{/i}}

{{_i}}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.{{/i}}

{{_i}}Markup{{/i}}

{{_i}}Wrap your content in a div like so:{{/i}}

<div class="hero-unit">
  <h1>{{_i}}Heading{{/i}}</h1>
  <p>{{_i}}Tagline{{/i}}</p>
  <p>
    <a class="btn btn-primary btn-large">
      {{_i}}Learn more{{/i}}
    </a>
  </p>
</div>

{{_i}}Hello, world!{{/i}}

{{_i}}This is a simple hero unit, a simple jumbotron-style component for calling extra attention to featured content or information.{{/i}}

{{_i}}Learn more{{/i}}

{{_i}}Page header{{/i}}

{{_i}}A simple shell for an h1 to appropratiely 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).{{/i}}

<div class="page-haeder">
  <h1>{{_i}}Example page header{{/i}}</h1>
</div>

{{_i}}Default thumbnails{{/i}}

{{_i}}By default, Bootstrap's thumbnails are designed to showcase linked images with minimal required markup.{{/i}}

{{_i}}Highly customizable{{/i}}

{{_i}}With a bit of extra markup, it's possible to add any kind of HTML content like headings, paragraphs, or buttons into thumbnails.{{/i}}

  • {{_i}}Thumbnail label{{/i}}

    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.

    {{_i}}Action{{/i}} {{_i}}Action{{/i}}

  • {{_i}}Thumbnail label{{/i}}

    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.

    {{_i}}Action{{/i}} {{_i}}Action{{/i}}

{{_i}}Why use thumbnails{{/i}}

{{_i}}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.{{/i}}

{{_i}}Simple, flexible markup{{/i}}

{{_i}}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.{{/i}}

{{_i}}Uses grid column sizes{{/i}}

{{_i}}Lastly, the thumbnails component uses existing grid system classes—like .span2 or .span3—for control of thumbnail dimensions.{{/i}}

{{_i}}The markup{{/i}}

{{_i}}As mentioned previously, the required markup for thumbnails is light and straightforward. Here's a look at the default setup for linked images:{{/i}}

<ul class="thumbnails">
  <li class="span3">
    <a href="#" class="thumbnail">
      <img src="http://placehold.it/260x180" alt="">
    </a>
  </li>
  ...
</ul>

{{_i}}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:{{/i}}

<ul class="thumbnails">
  <li class="span3">
    <div class="thumbnail">
      <img src="http://placehold.it/260x180" alt="">
      <h5>{{_i}}Thumbnail label{{/i}}</h5>
      <p>{{_i}}Thumbnail caption right here...{{/i}}</p>
    </div>
  </li>
  ...
</ul>

{{_i}}More examples{{/i}}

{{_i}}Explore all your options with the various grid classes available to you. You can also mix and match different sizes.{{/i}}

{{_i}}Lightweight defaults{{/i}}

{{_i}}Rewritten base class{{/i}}

{{_i}}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>.{{/i}}

{{_i}}Single alert message{{/i}}

{{_i}}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.{{/i}}


{{_i}}Goes great with javascript{{/i}}

{{_i}}Bootstrap comes with a great jQuery plugin that supports alert messages, making dismissing them quick and easy.{{/i}}

{{_i}}Get the plugin »{{/i}}

{{_i}}Example alerts{{/i}}

{{_i}}Wrap your message and an optional close icon in a div with simple class.{{/i}}

× {{_i}}Warning!{{/i}} {{_i}}Best check yo self, you're not looking too good.{{/i}}
<div class="alert">
  <a class="close" data-dismiss="alert">×</a>
  <strong>{{_i}}Warning!{{/i}}</strong> {{_i}}Best check yo self, you're not looking too good.{{/i}}
</div>

{{_i}}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.{{/i}}

×

{{_i}}Warning!{{/i}}

{{_i}}Best check yo self, you're not looking too good.{{/i}} 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">×</a>
  <h4 class="alert-heading">{{_i}}Warning!{{/i}}</h4>
  {{_i}}Best check yo self, you're not...{{/i}}
</div>

{{_i}}Contextual alternatives{{/i}} {{_i}}Add optional classes to change an alert's connotation{{/i}}

{{_i}}Error or danger{{/i}}

× {{_i}}Oh snap!{{/i}} {{_i}}Change a few things up and try submitting again.{{/i}}
<div class="alert alert-error">
  ...
</div>

{{_i}}Success{{/i}}

× {{_i}}Well done!{{/i}} {{_i}}You successfully read this important alert message.{{/i}}
<div class="alert alert-success">
  ...
</div>

{{_i}}Information{{/i}}

× {{_i}}Heads up!{{/i}} {{_i}}This alert needs your attention, but it's not super important.{{/i}}
<div class="alert alert-info">
  ...
</div>

{{_i}}Examples and markup{{/i}}

{{_i}}Basic{{/i}}

{{_i}}Default progress bar with a vertical gradient.{{/i}}

<div class="progress">
  <div class="bar"
       style="width: 60%;"></div>
</div>

{{_i}}Striped{{/i}}

{{_i}}Uses a gradient to create a striped effect.{{/i}}

<div class="progress progress-info
     progress-striped">
  <div class="bar"
       style="width: 20%;"></div>
</div>

{{_i}}Animated{{/i}}

{{_i}}Takes the striped example and animates it.{{/i}}

<div class="progress progress-danger
     progress-striped active">
  <div class="bar"
       style="width: 40%;"></div>
</div>

{{_i}}Options and browser support{{/i}}

{{_i}}Additional colors{{/i}}

{{_i}}Progress bars utilize some of the same class names as buttons and alerts for similar styling.{{/i}}

  • .progress-info
  • .progress-success
  • .progress-danger

{{_i}}Alternatively, you can customize the LESS files and roll your own colors and sizes.{{/i}}

{{_i}}Behavior{{/i}}

{{_i}}Progress bars use CSS3 transitions, so if you dynamically adjust the width via javascript, it will smoothly resize.{{/i}}

{{_i}}If you use the .active class, your .progress-striped progress bars will animate the stripes left to right.{{/i}}

{{_i}}Browser support{{/i}}

{{_i}}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.{{/i}}

{{_i}}Opera does not support animations at this time.{{/i}}

{{_i}}Wells{{/i}}

{{_i}}Use the well as a simple effect on an element to give it an inset effect.{{/i}}

{{_i}}Look, I'm in a well!{{/i}}
<div class="well">
  ...
</div>

{{_i}}Close icon{{/i}}

{{_i}}Use the generic close icon for dismissing content like modals and alerts.{{/i}}

×

<a class="close">&times;</a>