index.html 78.1 KB
Newer Older
1
2
3
4
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
5
    <title>Bootstrap, from Twitter</title>
6
7
    <meta name="description" content="">
    <meta name="author" content="">
8

9
    <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
10
11
12
13
    <!--[if lt IE 9]>
      <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->

14
    <!-- Le styles -->
15
    <link href="../bootstrap.css" rel="stylesheet">
Jacob Thornton's avatar
Jacob Thornton committed
16
    <link href="assets/css/docs.css" rel="stylesheet">
17
    <link href="assets/js/google-code-prettify/prettify.css" rel="stylesheet">
18

19
    <!-- Le fav and touch icons -->
20
21
22
23
    <link rel="shortcut icon" type="image/x-icon" href="assets/ico/favicon.ico">
    <link rel="apple-touch-icon" href="assets/ico/bootstrap-apple-57x57.png">
    <link rel="apple-touch-icon" sizes="72x72" href="assets/ico/bootstrap-apple-72x72.png">
    <link rel="apple-touch-icon" sizes="114x114" href="assets/ico/bootstrap-apple-114x114.png">
24
25
  </head>

26
  <body>
27

Mark Otto's avatar
Mark Otto committed
28
29
    <!-- Topbar
    ================================================== -->
30
31
    <div class="navbar navbar-fixed" data-scrollspy="scrollspy">
      <div class="navbar-inner">
Jacob Thornton's avatar
Jacob Thornton committed
32
        <div class="container">
33
          <a class="brand" href="./index.html">Bootstrap</a>
34
          <ul class="nav">
Mark Otto's avatar
Mark Otto committed
35
            <li class="active"><a href="#overview">Overview</a></li>
Jacob Thornton's avatar
Jacob Thornton committed
36
            <li><a href="#about">About</a></li>
37
38
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-dropdown="true">Scaffolding</a>
39
40
41
              <ul class="dropdown-menu">
                <li><a href="#grid-system">Grid</a></li>
                <li><a href="#layouts">Layouts</a></li>
42
                <li><a href="#responsive">Resposive</a></li>
43
44
              </ul>
            </li>
45
46
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-dropdown="true">CSS</a>
47
48
49
50
51
52
              <ul class="dropdown-menu">
                <li><a href="#typography">Type</a></li>
                <li><a href="#tables">Tables</a></li>
                <li><a href="#forms">Forms</a></li>
              </ul>
            </li>
53
54
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-dropdown="true">Patterns</a>
55
56
              <ul class="dropdown-menu">
                <li><a href="#navigation">Navigation</a></li>
57
                <li><a href="#media">Media</a></li>
58
59
                <li><a href="#alerts">Alerts</a></li>
                <li><a href="#popovers">Popovers</a></li>
60
61
62
                <li><a href="#autocomplete">Autocomplete</a></li>
                <li><a href="#accordion">Accordion</a></li>
                <li><a href="#datepicker">Datepicker</a></li>
63
64
              </ul>
            </li>
65
            <li><a href="#javascript">Javascript</a></li>
66
            <li><a href="#less">Using Less</a></li>
Jacob Thornton's avatar
Jacob Thornton committed
67
68
          </ul>
        </div>
69
70
71
      </div>
    </div>

72
73
74
75
76
77
78
  <div class="container">

    <div id="overview">
      <!-- Masthead (blueprinty thing)
      ================================================== -->
      <header class="jumbotron masthead">
        <div class="inner">
79
80
81
82
83
84
85
          <h1>Bootstrap,<br> from Twitter</h1>
          <p class="lead">Bootstrap is a responsive frontend toolkit from Twitter designed to kickstart web development, complete with core HTML, CSS, and JS for grids, type, forms, navigation, and many more components.</p>
          <p class="download-info">
            <a href="#" class="btn primary btn-large">Download on GitHub</a>
            Currently v2.0.0
          </p>
          <div class="benefits">
86
87
88
            <h4>Feature highlights</h4>
            <ul>
              <li><span>&times;</span> Built on LESS</li>
89
              <li><span>&times;</span> Complete styleguide docs</li>
90
91
92
93
94
95
96
              <li><span>&times;</span> Fully responsive design</li>
              <li><span>&times;</span> Small footprint (7kb gzipped)</li>
              <li><span>&times;</span> Support for IE7 and up</li>
              <li><span>&times;</span> Custom jQuery plugins</li>
              <li><span>&times;</span> Dozens of components</li>
            </ul>
          </div>
97
98
        </div>
      </header>
99

100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
      <ul class="quick-links">
        <li><strong>Quick links</strong></li>
        <li><a href="https://github.com/twitter/bootstrap/">GitHub</a></li>
        <li><a href="https://github.com/twitter/bootstrap/issues?state=open">Issues</a></li>
        <li><a href="https://github.com/twitter/bootstrap/wiki/Roadmap">Roadmap</a></li>
        <li><a href="https://github.com/twitter/bootstrap/wiki/Changelog">Changelog</a></li>
        <li class="divider">&middot;</li>
        <li><strong>Authors</strong></li>
        <li><a href="http://twitter.com/mdo">@mdo</a></li>
        <li><a href="http://twitter.com/fat">@fat</a></li>
        <li class="divider">&middot;</li>
        <li class="follow-btn">
          <a href="https://twitter.com/twbootstrap" class="twitter-follow-button" data-width="145px" data-link-color="#0069D6" data-show-count="false">Follow @twbootstrap</a><script src="http://platform.twitter.com/widgets.js" type="text/javascript"></script>
        </li>
        <li class="tweet-btn">
          <a href="https://twitter.com/share" class="twitter-share-button" data-url="http://twitter.github.com/bootstrap/" data-count="horizontal" data-via="twbootstrap" data-related="mdo:Creator of Twitter Bootstrap">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
        </li>
      </ul>


120
121
122
      <!-- Quickstart options
      ================================================== -->
      <div class="quickstart" style="display: none;">
123
        <div class="row">
124
          <div class="span4">
125
126
127
            <h6>Hotlink the CSS</h6>
            <p>For the quickest and easiest start, just copy this snippet into your webpage.</p>
            <form>
128
              <textarea class="copy-code" rows="1">&lt;link rel="stylesheet" href="http://twitter.github.com/bootstrap/assets/css/bootstrap.min.css"></textarea>
129
130
            </form>
          </div>
131
          <div class="span4">
132
133
            <h6>Use it with Less</h6>
            <p>A fan of using Less? No problem, just clone the repo and add these lines:</p>
134
            <form>
Jacob Thornton's avatar
Jacob Thornton committed
135
              <textarea class="copy-code" rows="2">&lt;link rel="stylesheet/less" href="/path/to/bootstrap.less"&gt;
136
  &lt;script src="/path/to/less.js"&gt;&lt;/script&gt;</textarea>
137
138
            </form>
          </div>
139
          <div class="span4">
140
            <h6>Fork on GitHub</h6>
141
            <p>Download, fork, pull, file issues, and more with the official Bootstrap repo on Github.</p>
Jacob Thornton's avatar
Jacob Thornton committed
142
            <p><a target="_blank" href="https://github.com/twitter/bootstrap" class="btn primary">Bootstrap on GitHub &raquo;</a></p>
Mark Otto's avatar
Mark Otto committed
143
            <p class="current-version">Currently <a href="https://github.com/twitter/bootstrap/wiki/Changelog">v1.3.0</a></p>
144
          </div>
145
        </div><!-- /row -->
146
147
      </div>

148
149
150
151
152
153
154
155
156
157
158
      <!-- About Bootstrap
      ================================================== -->
      <div class="row">
        <div class="span4">
          <h2>Built for and by nerds</h2>
          <p>Engineers at Twitter have historically used almost any library they were familiar with to meet front-end requirements. Bootstrap began as an answer to the challenges that presented. With the help of many awesome folks, Bootstrap has grown significantly.</p>
          <p>Read more on <a href="https://dev.twitter.com/blog/bootstrap-twitter">dev.twitter.com &rsaquo;</a></p>
        </div>
        <div class="span4">
          <h2>Cross-everything</h2>
          <p>Bootstrap is tested and supported in major modern browsers like Chrome, Safari, Internet Explorer, and Firefox.</p>
159
          <img class="browser-support" src="assets/img/browsers.png" alt="Tested and supported in Chrome, Safari, Internet Explorer, and Firefox">
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
          <ul>
            <li>Latest Safari</li>
            <li>Latest Google Chrome</li>
            <li>Firefox 4+</li>
            <li>Internet Explorer 7+</li>
            <li>Opera 11</li>
          </ul>
        </div>
        <div class="span4">
          <h2>What's included</h2>
          <p>Bootstrap comes complete with compiled CSS, uncompiled, and example templates.</p>
          <ul>
            <li><span class="label">New in 1.3</span> <a href="./javascript.html">Javascript plugins</a></li>
            <li>All original .less files</li>
            <li>Fully <a href="../bootstrap.css">compiled</a> and <a href="../bootstrap.min.css">minified</a> CSS</li>
            <li>Complete styleguide documentation</li>
            <li>Three example pages with different layouts</li>
          </ul>
        </div>
      </div><!-- /row -->
180
181
182

      <h3>Quick-start examples</h3>
      <p>Need some quick templates? Check out these basic examples we've put together:</p>
183
184
185
186
187
188
189
190
191
192
193
      <ul class="media-grid">
        <li>
          <a href="../examples/hero.html"><img src="assets/img/example-diagram-01.png" alt="Simple three-column layout with hero unit"></a>
        </li>
        <li>
          <a href="../examples/fluid.html"><img src="assets/img/example-diagram-02.png" alt="Fluid layout with static sidebar"></a>
        </li>
        <li>
          <a href="../examples/container-app.html"><img src="assets/img/example-diagram-03.png" alt="Simple hanging container for apps"></a>
        </li>
      </ul>
194

195
    </div><!-- /#overview -->
Mark Otto's avatar
Mark Otto committed
196
197
198
199


<!-- Grid system
================================================== -->
200
<section id="grid-system">
201
  <div class="page-header">
202
    <h1>Grid system <small>12 columns with a responsive twist</small></h1>
203
  </div>
204
205

  <h2>Default 940px grid</h2>
206
  <div class="row show-grid">
207
208
209
210
211
212
213
214
215
216
217
218
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
219
220
  </div>
  <div class="row show-grid">
Mark Otto's avatar
Mark Otto committed
221
222
223
    <div class="span4">4</div>
    <div class="span4">4</div>
    <div class="span4">4</div>
224
225
  </div>
  <div class="row show-grid">
Mark Otto's avatar
Mark Otto committed
226
    <div class="span4">4</div>
227
228
229
    <div class="span8">8</div>
  </div>
  <div class="row show-grid">
Mark Otto's avatar
Mark Otto committed
230
231
    <div class="span6">6</div>
    <div class="span6">6</div>
232
233
234
235
  </div>
  <div class="row show-grid">
    <div class="span12">12</div>
  </div>
236

237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
  <div class="row">
    <div class="span4">
      <p>The default grid system provided as part of Bootstrap is a <strong>940px-wide, 12-column grid</strong>.</p>
      <p>It also has three responsive variations for various devices and resolutions: phone, tablet, and large widescreen desktops.</p>
    </div>
    <div class="span4">
<pre class="prettyprint linenums">
&lt;div class="row"&gt;
  &lt;div class="span4"&gt;...&lt;/div&gt;
  &lt;div class="span8"&gt;...&lt;/div&gt;
&lt;/div&gt;
</pre>
    </div>
    <div class="span4">
      <p>As shown here, a basic layout can be created with two "columns," each spanning a number of the 12 foundational columns we defined as part of our grid system.</p>
    </div>
  </div><!-- /row -->
254
255

  <h2>Offsetting columns</h2>
256
  <div class="row show-grid">
Mark Otto's avatar
Mark Otto committed
257
    <div class="span4">4</div>
258
    <div class="span4 offset4">4 offset 4</div>
259
  </div><!-- /row -->
Mark Otto's avatar
Mark Otto committed
260
  <div class="row show-grid">
261
262
    <div class="span3 offset3">3 offset 3</div>
    <div class="span3 offset3">3 offset 3</div>
Mark Otto's avatar
Mark Otto committed
263
  </div><!-- /row -->
264
  <div class="row show-grid">
265
    <div class="span8 offset4">8 offset 4</div>
266
  </div><!-- /row -->
267

268
269
  <br>

270
  <h2>Nesting columns</h2>
271
  <div class="row">
272
273
274
    <div class="span6">
      <p>With the static (non-fluid) grid system in Bootstrap, nesting is easy. To nest your content, just add a new <code>.row</code> and set of <code>.span*</code> columns within an existing <code>.span*</code> column.</p>
      <h4>Example</h4>
275
      <div class="row show-grid">
276
        <div class="span6">
277
278
          Level 1 of column
          <div class="row show-grid">
279
            <div class="span3">
280
281
              Level 2
            </div>
282
            <div class="span3">
283
284
285
              Level 2
            </div>
          </div>
286
287
        </div>
      </div>
288
289
    </div>
    <div class="span6">
290
291
292
293
294
<pre class="prettyprint linenums">
&lt;div class="row"&gt;
  &lt;div class="span12"&gt;
    Level 1 of column
    &lt;div class="row"&gt;
295
296
      &lt;div class="span6"&gt;Level 2&lt;/div&gt;
      &lt;div class="span6"&gt;Level 2&lt;/div&gt;
297
298
299
300
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;
</pre>
301
    </div>
302
303
  </div>

304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
  <h2>Grid customization</h2>
  <table class="zebra-striped">
    <thead>
      <tr>
        <th>Variable</th>
        <th>Default value</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><code>@gridColumns</code></td>
        <td>16</td>
        <td>The number of columns within the grid</td>
      </tr>
      <tr>
        <td><code>@gridColumnWidth</code></td>
        <td>40px</td>
        <td>The width of each column within the grid</td>
      </tr>
      <tr>
        <td><code>@gridGutterWidth</code></td>
        <td>20px</td>
        <td>The negative space between each column</td>
      </tr>
      <tr>
        <td><code>@siteWidth</code></td>
        <td><em>Computed sum of all columns and gutters</em></td>
        <td>We use some basic match to count the number of columns and gutters and set the width of the <code>.fixed-container()</code> mixin.</td>
      </tr>
    </tbody>
  </table>
336
  <div class="row">
337
338
339
    <div class="span4">
      <h3>Variables in LESS</h3>
      <p>Built into Bootstrap are a handful of variables for customizing the default 940px grid system, documented above. All variables for the grid are stored in mixins.less.</p>
340
    </div>
341
342
343
    <div class="span4">
      <h3>How to customize</h3>
      <p>Modifying the grid means changing the three <code>@grid*</code> variables and recompiling Bootstrap. Change the grids in the preboot.less file and use one of the <a href="#compiling">four ways documented to recompile</a>.</p>
344
    </div>
345
346
347
348
349
350
    <div class="span4">
      <h3>Staying responsive</h3>
      <p>Customization of the grid only works at the default level, the 940px grid. To maintain the responsive aspects of Bootstrap, you'll also have to customize the grids in responsive.less.</p>
    </div>
  </div><!-- /row -->

351
352
353
354
</section>



Mark Otto's avatar
Mark Otto committed
355
356
<!-- Layouts (Default and fluid)
================================================== -->
357
358
359
360
<section id="layouts">
  <div class="page-header">
    <h1>Layouts <small>Basic templates to create webpages</small></h1>
  </div>
Mark Otto's avatar
Mark Otto committed
361

362
  <div class="row">
363
    <div class="span6">
364
      <h2>Fixed layout</h2>
365
      <p>The default and simple 940px-wide, centered layout for just about any website or page provided by a single <code>&lt;div.container&gt;</code>.</p>
366
367
368
      <div class="mini-layout">
        <div class="mini-layout-body"></div>
      </div>
369
<pre class="prettyprint linenums">
370
371
372
373
374
375
&lt;body&gt;
  &lt;div class="container"&gt;
    ...
  &lt;/div&gt;
&lt;/body&gt;
</pre>
376
    </div><!-- /col -->
377
    <div class="span6">
378
      <h2>Fluid layout</h2>
379
      <p>An alternative, flexible fluid page structure with min- and max-widths and a left-hand sidebar. Great for apps and docs.</p>
380
381
382
383
      <div class="mini-layout fluid">
        <div class="mini-layout-sidebar"></div>
        <div class="mini-layout-body"></div>
      </div>
384
<pre class="prettyprint linenums">
385
386
387
388
389
390
391
392
393
394
395
&lt;body&gt;
  &lt;div class="container-fluid"&gt;
    &lt;div class="sidebar"&gt;
      ...
    &lt;/div&gt;
    &lt;div class="content"&gt;
      ...
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/body&gt;
</pre>
396
397
    </div><!-- /col -->
  </div><!-- /row -->
398
399
400
401
</section>



Mark Otto's avatar
Mark Otto committed
402
403
<!-- Typography
================================================== -->
404
<section id="typography">
Mark Otto's avatar
Mark Otto committed
405
406
  <div class="page-header">
    <h1>Typography <small>Headings, paragraphs, lists, and other inline type elements</small></h1>
407
  </div>
408

409
410
  <h2>Headings &amp; body copy</h2>

Mark Otto's avatar
Mark Otto committed
411
412
  <!-- Headings & Paragraph Copy -->
  <div class="row">
Mark Otto's avatar
Mark Otto committed
413
    <div class="span4">
414
      <h3>Typographic scale</h3>
Mark Otto's avatar
Mark Otto committed
415
      <p>The entire typographic grid is based on two Less variables in our preboot.less file: <code>@baseFontSize</code> and <code>@baseLineHeight</code>. The first is the base font-size used throughout and the second is the base line-height.</p>
416
      <p>We use those variables, and some math, to create the margins, paddings, and line-heights of all our type and more.</p>
Mark Otto's avatar
Mark Otto committed
417
    </div>
Mark Otto's avatar
Mark Otto committed
418
    <div class="span4">
419
420
421
      <h3>Example body text</h3>
      <p>Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
      <p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec sed odio dui.</p>
Mark Otto's avatar
Mark Otto committed
422
    </div>
423
    <div class="span4">
424
425
426
427
428
429
430
431
      <div class="well">
        <h1>h1. Heading 1</h1>
        <h2>h2. Heading 2</h2>
        <h3>h3. Heading 3</h3>
        <h4>h4. Heading 4</h4>
        <h5>h5. Heading 5</h5>
        <h6>h6. Heading 6</h6>
      </div>
Mark Otto's avatar
Mark Otto committed
432
    </div>
433
434
  </div>

Mark Otto's avatar
Mark Otto committed
435
  <!-- Misc Elements -->
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
  <h2>Emphasis, address, and abbreviation</h2>
  <table class="zebra-striped">
    <thead>
      <tr>
        <th>Element</th>
        <th>Description</th>
        <th>Usage</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>
          <code>&lt;strong&gt;</code>
        </td>
        <td>
          For emphasizing a snippet of text with <strong>important</strong>
        </td>
        <td>
          <span class="muted">None</span>
        </td>
      </tr>
      <tr>
        <td>
          <code>&lt;em&gt;</code>
        </td>
        <td>
          For emphasizing a snippet of text with <em>stress</em>
        </td>
        <td>
          <span class="muted">None</span>
        </td>
      </tr>
      <tr>
        <td>
          <code>&lt;abbr&gt;</code>
        </td>
        <td>
          Wraps abbreviations and acronyms to show the expanded version on hover
        </td>
        <td>
          Include optional <code>title</code> for expanded text
        </td>
      </tr>
      <tr>
        <td>
          <code>&lt;address&gt;</code>
        </td>
        <td>
          For contact information for its nearest ancestor or the entire body of work
        </td>
        <td>
          Preserve formatting by ending all lines with <code>&lt;br&gt;</code>
        </td>
      </tr>
    </tbody>
  </table>

Mark Otto's avatar
Mark Otto committed
493
  <div class="row">
494
495
    <div class="span4">
      <h3>Using emphasis</h3>
Mark Otto's avatar
Mark Otto committed
496
      <p><a href="#">Fusce dapibus</a>, <strong>tellus ac cursus commodo</strong>, <em>tortor mauris condimentum nibh</em>, ut fermentum massa justo sit amet risus. Maecenas faucibus mollis interdum. Nulla vitae elit libero, a pharetra augue.</p>
497
      <p><strong>Note:</strong> Feel free to use <code>&lt;b&gt;</code> and <code>&lt;i&gt;</code> in HTML5, but their usage has changed a bit. <code>&lt;b&gt;</code> is meant to highlight words or phrases without conveying additional importance while <code>&lt;i&gt;</code> is mostly for voice, technical terms, etc.</p>
Mark Otto's avatar
Mark Otto committed
498
    </div>
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
    <div class="span4">
      <h3>Example addresses</h3>
      <p>Here are two examples of how the <code>&lt;address&gt;</code> tag can be used:</p>
      <address>
        <strong>Twitter, Inc.</strong><br>
        795 Folsom Ave, Suite 600<br>
        San Francisco, CA 94107<br>
        <abbr title="Phone">P:</abbr> (123) 456-7890
      </address>
      <address>
        <strong>Full Name</strong><br>
        <a mailto="#">first.last@gmail.com</a>
      </address>
    </div>
    <div class="span4">
      <h3>Example abbreviations</h3>
      <p>Abbreviations are styled with uppercase text and a light dotted bottom border. They also have a help cursor on hover so users have extra indication something will be shown on hover.</p>
      <p><abbr title="HyperText Markup Language">HTML</abbr> is the best thing since sliced bread.</p>
      <p>An abbreviation of the word attribute is <abbr title="attribute">attr</abbr>.</p>
    </div>
  </div>

521

Mark Otto's avatar
Mark Otto committed
522
  <!-- Blockquotes -->
523
  <h2>Blockquotes</h2>
Mark Otto's avatar
Mark Otto committed
524
  <div class="row">
525
    <div class="span5">
Mark Otto's avatar
Mark Otto committed
526
      <p>To include a blockquote, wrap <code>&lt;blockquote&gt;</code> around <code>&lt;p&gt;</code> and <code>&lt;small&gt;</code> tags. Use the <code>&lt;small&gt;</code> element to cite your source and you'll get an em dash <code>&amp;mdash;</code> before it.</p>
Mark Otto's avatar
Mark Otto committed
527
      <blockquote>
Mark Otto's avatar
Mark Otto committed
528
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante venenatis dapibus posuere velit aliquet.</p>
Mark Otto's avatar
Mark Otto committed
529
530
        <small>Dr. Julius Hibbert</small>
      </blockquote>
531
532
    </div>
    <div class="span7">
533
534
535
536
537
538
<pre class="prettyprint linenums">
&lt;blockquote&gt;
  &lt;p&gt;Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante venenatis dapibus posuere velit aliquet.&lt;/p&gt;
  &lt;small&gt;Dr. Julius Hibbert&lt;/small&gt;
&lt;/blockquote&gt;
</pre>
Mark Otto's avatar
Mark Otto committed
539
    </div>
540
  </div>
541

542
  <!-- Lists -->
Mark Otto's avatar
Mark Otto committed
543
544
  <h2>Lists</h2>
  <div class="row">
545
    <div class="span3">
Mark Otto's avatar
Mark Otto committed
546
547
      <h4>Unordered <code>&lt;ul&gt;</code></h4>
      <ul>
Mark Otto's avatar
Mark Otto committed
548
549
550
551
552
        <li>Lorem ipsum dolor sit amet</li>
        <li>Consectetur adipiscing elit</li>
        <li>Integer molestie lorem at massa</li>
        <li>Facilisis in pretium nisl aliquet</li>
        <li>Nulla volutpat aliquam velit
Mark Otto's avatar
Mark Otto committed
553
          <ul>
Mark Otto's avatar
Mark Otto committed
554
555
556
557
            <li>Phasellus iaculis neque</li>
            <li>Purus sodales ultricies</li>
            <li>Vestibulum laoreet porttitor sem</li>
            <li>Ac tristique libero volutpat at</li>
Mark Otto's avatar
Mark Otto committed
558
559
          </ul>
        </li>
Mark Otto's avatar
Mark Otto committed
560
561
562
        <li>Faucibus porta lacus fringilla vel</li>
        <li>Aenean sit amet erat nunc</li>
        <li>Eget porttitor lorem</li>
Mark Otto's avatar
Mark Otto committed
563
564
      </ul>
    </div>
565
    <div class="span3">
566
      <h4>Unstyled <code>&lt;ul.unstyled&gt;</code></h4>
Mark Otto's avatar
Mark Otto committed
567
      <ul class="unstyled">
Mark Otto's avatar
Mark Otto committed
568
569
570
571
572
        <li>Lorem ipsum dolor sit amet</li>
        <li>Consectetur adipiscing elit</li>
        <li>Integer molestie lorem at massa</li>
        <li>Facilisis in pretium nisl aliquet</li>
        <li>Nulla volutpat aliquam velit
Mark Otto's avatar
Mark Otto committed
573
          <ul>
Mark Otto's avatar
Mark Otto committed
574
575
576
577
            <li>Phasellus iaculis neque</li>
            <li>Purus sodales ultricies</li>
            <li>Vestibulum laoreet porttitor sem</li>
            <li>Ac tristique libero volutpat at</li>
Mark Otto's avatar
Mark Otto committed
578
579
          </ul>
        </li>
Mark Otto's avatar
Mark Otto committed
580
581
582
        <li>Faucibus porta lacus fringilla vel</li>
        <li>Aenean sit amet erat nunc</li>
        <li>Eget porttitor lorem</li>
Mark Otto's avatar
Mark Otto committed
583
584
      </ul>
    </div>
585
    <div class="span3">
Mark Otto's avatar
Mark Otto committed
586
587
      <h4>Ordered <code>&lt;ol&gt;</code></h4>
      <ol>
Mark Otto's avatar
Mark Otto committed
588
589
590
591
592
593
594
595
        <li>Lorem ipsum dolor sit amet</li>
        <li>Consectetur adipiscing elit</li>
        <li>Integer molestie lorem at massa</li>
        <li>Facilisis in pretium nisl aliquet</li>
        <li>Nulla volutpat aliquam velit</li>
        <li>Faucibus porta lacus fringilla vel</li>
        <li>Aenean sit amet erat nunc</li>
        <li>Eget porttitor lorem</li>
Mark Otto's avatar
Mark Otto committed
596
597
      </ol>
    </div>
598
    <div class="span3">
Mark Otto's avatar
Mark Otto committed
599
      <h4>Description <code>&lt;dl&gt;</code></h4>
Mark Otto's avatar
Mark Otto committed
600
601
602
603
604
605
606
607
608
609
      <dl>
        <dt>Description lists</dt>
        <dd>A description list is perfect for defining terms.</dd>
        <dt>Euismod</dt>
        <dd>Vestibulum id ligula porta felis euismod semper eget lacinia odio sem nec elit.</dd>
        <dd>Donec id elit non mi porta gravida at eget metus.</dd>
        <dt>Malesuada porta</dt>
        <dd>Etiam porta sem malesuada magna mollis euismod.</dd>
      </dl>
    </div>
610
  </div><!-- /row -->
611
612
613


  <!-- Code -->
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630

  <h2>Code <small>Inline and block</small></h2>
  <table class="zebra-striped">
    <thead>
      <tr>
        <th style="width: 190px;">Element</th>
        <th>Result</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><code>&lt;code&gt;</code></td>
        <td>In a line of text like this, your wrapped code will look like this <code>&lt;html&gt;</code> element.</td>
      </tr>
      <tr>
        <td><code>&lt;pre&gt;</code></td>
        <td>
631
632
633
634
<pre>&lt;div&gt;
  &lt;h1&gt;Heading&lt;/h1&gt;
  &lt;p&gt;Something right here...&lt;/p&gt;
&lt;/div&gt;</pre>
635
636
637
638
639
640
641
          <p><strong>Note:</strong> Be sure to keep code within <code>pre</code> tags as close to the left as possible; it will render all tabs.</p>
        </td>
      </tr>
      <tr>
        <td><code>&lt;pre class="prettyprint"&gt;</code></td>
        <td>
          <p>Using the google-code-prettify library, you're blocks of code get a slightly different visual style and automatic syntax highlighting.</p>
642
643
644
645
<pre class="prettyprint">&lt;div&gt;
  &lt;h1&gt;Heading&lt;/h1&gt;
  &lt;p&gt;Something right here...&lt;/p&gt;
&lt;/div&gt;</pre>
646
647
648
649
650
          <p><a href="http://code.google.com/p/google-code-prettify/">Download google-code-prettify</a> and view the readme for <a href="http://google-code-prettify.googlecode.com/svn/trunk/README.html">how to use</a>.</p>
        </td>
      </tr>
    </tbody>
  </table>
651
652

  <!-- Labels -->
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
  <h2>Inline labels <small>for special attention</small></h2>
  <table class="zebra-striped">
    <thead>
      <tr>
        <th style="width: 190px;">Labels</th>
        <th>Markup</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>
          <span class="label">Default</span>
        </td>
        <td>
          <code>&lt;span class="label"&gt;Default&lt;/span&gt;</code>
        </td>
      </tr>
      <tr>
        <td>
          <span class="label success">New</span>
        </td>
        <td>
          <code>&lt;span class="label success"&gt;New&lt;/span&gt;</code>
        </td>
      </tr>
      <tr>
        <td>
          <span class="label warning">Warning</span>
        </td>
        <td>
          <code>&lt;span class="label warning"&gt;Warning&lt;/span&gt;</code>
        </td>
      </tr>
      <tr>
        <td>
          <span class="label important">Important</span>
        </td>
        <td>
          <code>&lt;span class="label important"&gt;Important&lt;/span&gt;</code>
        </td>
      </tr>
      <tr>
        <td>
          <span class="label notice">Notice</span>
        </td>
        <td>
          <code>&lt;span class="label notice"&gt;Notice&lt;/span&gt;</code>
        </td>
      </tr>
    </tbody>
  </table>
704

705
706
707
708
</section>



Mark Otto's avatar
Mark Otto committed
709
710
<!-- Tables
================================================== -->
711
<section id="tables">
Mark Otto's avatar
Mark Otto committed
712
713
  <div class="page-header">
    <h1>Tables <small>For, you guessed it, tabular data</small></h1>
714
  </div>
Mark Otto's avatar
Mark Otto committed
715
716
  <!-- Table structure -->
  <div class="row">
717
    <div class="span3">
Mark Otto's avatar
Mark Otto committed
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
      <h2>Building tables</h2>
      <p>
        <code>&lt;table&gt;</code>
        <code>&lt;thead&gt;</code>
        <code>&lt;tbody&gt;</code>
        <code>&lt;tr&gt;</code>
        <code>&lt;th&gt;</code>
        <code>&lt;td&gt;</code>
        <code>&lt;colspan&gt;</code>
        <code>&lt;caption&gt;</code>
      </p>
      <p>Tables are great&mdash;for a lot of things. Great tables, however, need a bit of markup love to be useful, scalable, and readable (at the code level). Here are a few tips to help.</p>
      <p>Always wrap your column headers in a <code>&lt;thead&gt;</code> such that hierarchy is <code>&lt;thead&gt;</code> > <code>&lt;tr&gt;</code> > <code>&lt;th&gt;</code>.</p>
      <p>Similar to the column headers, all your table’s body content should be wrapped in a <code>&lt;tbody&gt;</code> so your hierarchy is <code>&lt;tbody&gt;</code> > <code>&lt;tr&gt;</code> > <code>&lt;td&gt;</code>.</p>
    </div>
733
    <div class="span9">
Mark Otto's avatar
Mark Otto committed
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
      <h3>Example: Default table styles</h3>
      <p>All tables will be automatically styled with only the essential borders to ensure readability and maintain structure. No need to add extra classes or attributes.</p>
      <table>
        <thead>
          <tr>
            <th>#</th>
            <th>First Name</th>
            <th>Last Name</th>
            <th>Language</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>1</td>
            <td>Some</td>
            <td>One</td>
            <td>English</td>
          </tr>
          <tr>
            <td>2</td>
            <td>Joe</td>
            <td>Sixpack</td>
            <td>English</td>
          </tr>
          <tr>
            <td>3</td>
            <td>Stu</td>
            <td>Dent</td>
            <td>Code</td>
          </tr>
        </tbody>
      </table>
766
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
767
&lt;table&gt;
768
769
  ...
&lt;/table&gt;</pre>
Mark Otto's avatar
Mark Otto committed
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
      <h3>Example: Zebra-striped</h3>
      <p>Get a little fancy with your tables by adding zebra-striping&mdash;just add the <code>.zebra-striped</code> class.</p>
      <table class="zebra-striped">
        <thead>
          <tr>
            <th>#</th>
            <th>First Name</th>
            <th>Last Name</th>
            <th>Language</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>1</td>
            <td>Some</td>
            <td>One</td>
            <td>English</td>
          </tr>
          <tr>
            <td>2</td>
            <td>Joe</td>
            <td>Sixpack</td>
            <td>English</td>
          </tr>
          <tr>
            <td>3</td>
            <td>Stu</td>
            <td>Dent</td>
            <td>Code</td>
          </tr>
        </tbody>
      </table>
802
      <p><strong>Note:</strong> Zebra-striping is a progressive enhancement not available for older browsers like IE8 and below.</p>
803
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
804
&lt;table class="zebra-striped"&gt;
805
806
...
&lt;/table&gt;</pre>
Mark Otto's avatar
Mark Otto committed
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
      <h3>Example: Zebra-striped w/ TableSorter.js</h3>
      <p>Taking the previous example, we improve the usefulness of our tables by providing sorting functionality via <a href="http://jquery.com">jQuery</a> and the <a href="http://tablesorter.com/docs/">Tablesorter</a> plugin. <strong>Click any column’s header to change the sort.</strong></p>
      <table class="zebra-striped" id="sortTableExample">
        <thead>
          <tr>
            <th>#</th>
            <th class="yellow">First Name</th>
            <th class="blue">Last Name</th>
            <th class="green">Language</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>1</td>
            <td>Your</td>
            <td>One</td>
            <td>English</td>
          </tr>
          <tr>
            <td>2</td>
            <td>Joe</td>
            <td>Sixpack</td>
            <td>English</td>
          </tr>
          <tr>
            <td>3</td>
            <td>Stu</td>
            <td>Dent</td>
            <td>Code</td>
          </tr>
        </tbody>
      </table>
839
<pre class="prettyprint linenums">
Jacob Thornton's avatar
Jacob Thornton committed
840
841
842
843
&lt;script src="js/jquery/jquery.tablesorter.min.js"&gt;&lt;/script&gt;
&lt;script &gt;
  $(function() {
    $("table#sortTableExample").tablesorter({ sortList: [[1,0]] });
844
845
  });
&lt;/script&gt;
Mark Otto's avatar
Mark Otto committed
846
&lt;table class="zebra-striped"&gt;
847
848
  ...
&lt;/table&gt;</pre>
Mark Otto's avatar
Mark Otto committed
849
    </div>
850
  </div><!-- /row -->
851
852
853
854
</section>



Mark Otto's avatar
Mark Otto committed
855
856
<!-- Forms
================================================== -->
857
<section id="forms">
Mark Otto's avatar
Mark Otto committed
858
859
  <div class="page-header">
    <h1>Forms</h1>
860
  </div>
861
  <div class="row">
862
    <div class="span4">
863
864
865
866
867
868
869
870
871
      <h3>Four types of forms</h3>
      <p>With 2.0, we now have four types of forms to choose from:</p>
      <ul>
        <li>Search form for a super-rounded input and optional button</li>
        <li>Inline form for a series of elements on one line</li>
        <li>Horizontal form for left-aligned labels</li>
        <li>Vertical form for stacked labels and inputs</li>
      </ul>
    </div>
872
    <div class="span4">
873
874
      <h3></h3>
    </div>
875
  </div><!-- /row -->
Mark Otto's avatar
Mark Otto committed
876
  <div class="row">
877
    <div class="span3">
878
      <h2>Search form</h2>
Mark Otto's avatar
Mark Otto committed
879
    </div>
880
    <div class="span9">
881
882
883
884
885
886
      <div class="well">
        <form class="form-search">
          <input type="text" class="search-query">
          <button type="submit" class="btn">Search</button>
        </form>
      </div><!--/well-->
887
    </div>
888
  </div><!-- /row -->
Mark Otto's avatar
Mark Otto committed
889
  <div class="row">
890
    <div class="span3">
891
      <h2>Inline form</h2>
892
    </div>
893
    <div class="span9">
894
895
896
897
898
899
900
901
902
903
      <div class="well">
        <form class="form-inline">
          <h4>Some directional text</h4>
          <p>And maybe some kind of optional supporting text right here.</p>
          <input type="text" class="input-medium">
          <input type="text" class="input-medium">
          <input type="text" class="input-medium">
          <button type="submit" class="btn">Search</button>
        </form>
      </div><!--/well-->
904
    </div>
905
  </div><!-- /row -->
906
  <div class="row">
907
    <div class="span3">
908
      <h2>Horizontal form</h2>
909
    </div>
910
    <div class="span9">
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
      <form class="form-horizontal">
        <legend>Example form</legend>
        <fieldset class="control-group">
          <label class="control-label" for="input01">Text input</label>
          <div class="controls">
            <input type="text" class="xlarge" name="input01">
            <p class="help-text">Help text here. Be sure to fill this out like so, or else!</p>
          </div>
        </fieldset>
        <fieldset class="control-group">
          <label class="control-label" for="select01">Select list</label>
          <div class="controls">
            <select name="select01">
              <option>1</option>
              <option>2</option>
              <option>3</option>
              <option>4</option>
              <option>5</option>
            </select>
          </div>
        </fieldset>
        <fieldset class="control-group">
          <label class="control-label" for="multiSelect">Multi-select</label>
          <div class="controls">
            <select multiple="multiple" name="multiSelect">
              <option>1</option>
              <option>2</option>
              <option>3</option>
              <option>4</option>
              <option>5</option>
            </select>
          </div>
        </fieldset>
        <legend>Example form</legend>
        <fieldset class="control-group">
          <label class="control-label" for="fileInput">File input</label>
          <div class="controls">
948
            <input class="input-file" id="fileInput" name="fileInput" type="file">
949
950
951
952
953
954
955
956
957
958
959
          </div>
        </fieldset>
        <fieldset class="control-group has-error">
          <label class="control-label" for="inputError">Input with error</label>
          <div class="controls">
            <input type="text" name="inputError">
          </div>
        </fieldset>
        <fieldset class="control-group has-error">
          <label class="control-label" for="textareaError">Textarea with error</label>
          <div class="controls">
960
            <textarea class="input-xlarge" rows="3"></textarea>
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
          </div>
        </fieldset>
        <fieldset class="control-group">
          <label class="control-label" for="optionsCheckboxes">Checkboxes</label>
          <div class="controls">
            <div class="control-list">
              <label class="checkbox">
                <input type="checkbox" name="optionsCheckboxes" value="option1">
                Option one is this and that&mdash;be sure to include why it’s great
              </label>
              <label class="checkbox">
                <input type="checkbox" name="optionsCheckboxes" value="option2">
                Option two can also be checked and included in form results
              </label>
              <label class="checkbox">
                <input type="checkbox" name="optionsCheckboxes" value="option3">
                Option three can&mdash;yes, you guessed it&mdash;also be checked and included in form results
              </label>
              <label class="checkbox">
                <input type="checkbox" name="optionsCheckboxes" value="option4">
                Option four cannot be checked as it is disabled
              </label>
            </div>
            <p class="help-text"><strong>Note:</strong> Labels surround all the options for much larger click areas and a more usable form.</p>
          </div>
        </fieldset>
        <fieldset class="control-group">
          <label class="control-label" for="optionsRadios">Radio buttons</label>
          <div class="controls">
            <div class="control-list">
              <label>
992
                <input type="radio" checked name="optionsRadios" value="option1">
993
994
995
                <span>Option one is this and that&mdash;be sure to include why it’s great</span>
              </label>
              <label>
996
                <input type="radio" name="optionsRadios" value="option2">
997
998
999
1000
1001
1002
1003
1004
1005
1006
                <span>Option two can is something else and selecting it will deselect options 1</span>
              </label>
            </div>
            <p class="help-text"><strong>Note:</strong> Labels surround all the options for much larger click areas and a more usable form.</p>
          </div>
        </fieldset>
        <fieldset class="form-actions">
          <button type="submit" class="btn primary">Save changes</button>
          <button type="reset" class="btn">Cancel</button>
        </fieldset>
1007
1008
      </form>
    </div>
1009
  </div><!-- /row -->
Mark Otto's avatar
Mark Otto committed
1010
  <div class="row">
1011
    <div class="span3">
1012
      <h2>Vertical form</h2>
1013
    </div>
1014
    <div class="span9">
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
      <form class="form-vertical">
        <legend>Example form</legend>
        <fieldset class="control-group">
          <label class="control-label" for="input01">Label</label>
          <div class="controls">
            <input type="text" class="xlarge" name="input01">
            <p class="help-text">Be sure to fill this out like so, or else!</p>
          </div>
        </fieldset>
        <fieldset class="control-group">
          <label class="control-label" for="select01">Label</label>
          <div class="controls">
            <select name="select01"></select>
          </div>
        </fieldset>
        <fieldset class="control-group">
          <label class="control-label" for="input02">Label</label>
          <div class="controls">
            <div class="control-list">
              <label class="checkbox">
                <input type="checkbox"> Something something something something something
              </label>
              <label class="checkbox">
                <input type="checkbox"> Something something something something
              </label>
              <label class="checkbox">
                <input type="checkbox"> Something something something
              </label>
            </div>
          </div>
        </fieldset>
        <fieldset class="form-actions">
          <button type="submit" class="btn primary">Save changes</button>
          <button type="reset" class="btn">Cancel</button>
        </fieldset>
      </form>
1051
    </div>
1052
1053
1054
  </div><!-- /row -->

  <div class="row">
1055
    <div class="span3">
1056
1057
1058
1059
      <h2>Buttons</h2>
      <p>As a convention, buttons are used for actions while links are used for objects. For instance, "Download" could be a button and "recent activity" could be a link.</p>
      <p>All buttons default to a light gray style, but a number of functional classes can be applied for different color styles. These classes include a blue <code>.primary</code> class, a light-blue <code>.info</code> class, a green <code>.success</code> class, and a red <code>.danger</code> class.</p>
    </div>
1060
    <div class="span9">
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
      <h3>Example buttons</h3>
      <p>Button styles can be applied to anything with the <code>.btn</code> applied. Typically you’ll want to apply these to only <code>&lt;a&gt;</code>, <code>&lt;button&gt;</code>, and select <code>&lt;input&gt;</code> elements. Here’s how it looks:</p>
      <div class="well" style="padding: 14px 19px;">
        <button class="btn primary">Primary</button>&nbsp;<button class="btn">Default</button>&nbsp;<button class="btn info">Info</button>&nbsp;<button class="btn success">Success</button>&nbsp;<button class="btn danger">Danger</button>
      </div>
      <h3>Alternate sizes</h3>
      <p>Fancy larger or smaller buttons? Have at it!</p>
      <div class="well">
        <a href="#" class="btn large primary">Primary action</a>
        <a href="#" class="btn large">Action</a>
      </div>
      <div class="well" style="padding: 16px 19px;">
        <a href="#" class="btn small primary">Primary action</a>
        <a href="#" class="btn small">Action</a>
      </div>
      <h3>Disabled state</h3>
      <p>For buttons that are not active or are disabled by the app for one reason or another, use the disabled state. That’s <code>.disabled</code> for links and <code>:disabled</code> for <code>&lt;button&gt;</code> elements.</p>
      <h4>Links</h4>
      <div class="well">
        <a href="#" class="btn large primary disabled">Primary action</a>
        <a href="#" class="btn large disabled">Action</a>
      </div>
      <h4>Buttons</h4>
      <div class="well">
        <button class="btn large primary disabled" disabled="disabled">Primary action</button>&nbsp;<button class="btn large" disabled>Action</button>
      </div>
    </div>
  </div><!-- /row -->

  <div class="row">
1091
    <div class="span3">
1092
1093
      <h2>Button groups</h2>
    </div>
1094
    <div class="span9">
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
      <h3>Example</h3>
      <div class="well">
        <div class="btn-group">
          <a class="btn" href="#">Left</a>
          <a class="btn" href="#">Middle</a>
          <a class="btn" href="#">Right</a>
        </div>
      </div>
      <div class="well">
        <div class="btn-toolbar">
          <div class="btn-group">
            <a class="btn" href="#">1</a>
            <a class="btn" href="#">2</a>
            <a class="btn" href="#">3</a>
            <a class="btn" href="#">4</a>
            <a class="btn" href="#">5</a>
          </div>
          <div class="btn-group">
            <a class="btn" href="#">6</a>
            <a class="btn" href="#">7</a>
            <a class="btn" href="#">8</a>
          </div>
          <div class="btn-group">
            <a class="btn" href="#">9</a>
          </div>
          <div class="btn-group">
            <a class="btn" href="#">10</a>
          </div>
        </div>
      </div>
    </div>
  </div><!-- /row -->

1128
1129
1130
1131
</section>



1132
1133
1134
1135
1136
1137
1138
1139
<!-- Media
================================================== -->
<section id="media">
  <div class="page-header">
    <h1>Media <small>Displaying images and videos</small></h1>
  </div>
  <!-- Table structure -->
  <div class="row">
1140
    <div class="span3">
1141
1142
1143
      <h2>Media grid</h2>
      <p>Display thumbnails of varying sizes on pages with a low HTML footprint and minimal styles.</p>
    </div>
1144
    <div class="span9">
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
      <h3>Example thumbnails</h3>
      <p>Thumbnails in the <code>.media-grid</code> can be any size, but they work best when mapped directly to the built-in Bootstrap grid system. Image widths like 90, 210, and 330 combine with a few pixels of padding to equal the <code>.span2</code>, <code>.span4</code>, and <code>.span6</code> column sizes.</p>
      <h4>Large</h4>
      <ul class="media-grid">
        <li>
          <a href="#">
            <img class="thumbnail" src="http://placehold.it/330x230" alt="">
          </a>
        </li>
        <li>
          <a href="#">
            <img class="thumbnail" src="http://placehold.it/330x230" alt="">
          </a>
        </li>
      </ul>
      <h4>Medium</h4>
      <ul class="media-grid">
        <li>
          <a href="#">
            <img class="thumbnail" src="http://placehold.it/210x150" alt="">
          </a>
        </li>
        <li>
          <a href="#">
            <img class="thumbnail" src="http://placehold.it/210x150" alt="">
          </a>
        </li>
        <li>
          <a href="#">
            <img class="thumbnail" src="http://placehold.it/210x150" alt="">
          </a>
        </li>
        <li>
          <a href="#">
            <img class="thumbnail" src="http://placehold.it/210x150" alt="">
          </a>
        </li>
        <li>
          <a href="#">
            <img class="thumbnail" src="http://placehold.it/210x150" alt="">
          </a>
        </li>
      </ul>
      <h4>Small</h4>
      <ul class="media-grid">
        <li>
          <a href="#">
            <img class="thumbnail" src="http://placehold.it/90x90" alt="">
          </a>
        </li>
        <li>
          <a href="#">
            <img class="thumbnail" src="http://placehold.it/90x90" alt="">
          </a>
        </li>
        <li>
          <a href="#">
            <img class="thumbnail" src="http://placehold.it/90x90" alt="">
          </a>
        </li>
      </ul>
      <h4>Coding them</h4>
      <p>Media grids are easy to use and rather simple on the markup side. Their dimensions are purely based on the size of the images included.</p>
<pre class="prettyprint linenums">
&lt;ul class="media-grid"&gt;
  &lt;li&gt;
    &lt;a href="#"&gt;
      &lt;img class="thumbnail" src="http://placehold.it/330x230" alt=""&gt;
    &lt;/a&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;a href="#"&gt;
      &lt;img class="thumbnail" src="http://placehold.it/330x230" alt=""&gt;
    &lt;/a&gt;
  &lt;/li&gt;
&lt;/ul&gt;
</pre>
    </div>
  </div><!-- /row -->
</section>



Mark Otto's avatar
Mark Otto committed
1228
1229
<!-- Navigation
================================================== -->
1230
<section id="navigation">
Mark Otto's avatar
Mark Otto committed
1231
1232
1233
1234
  <div class="page-header">
    <h1>Navigation</h1>
  </div>
  <h2>Fixed topbar</h2>
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
  <div class="navbar navbar-static" data-dropdown="dropdown">
    <div class="navbar-inner">
      <div class="container">
        <a class="brand" href="#">Project Name</a>
        <ul class="nav">
          <li class="active"><a href="#">Home</a></li>
          <li><a href="#">Link</a></li>
          <li><a href="#">Link</a></li>
          <li><a href="#">Link</a></li>
          <li class="dropdown">
            <a href="#" class="dropdown-toggle">Dropdown</a>
            <ul class="dropdown-menu">
              <li><a href="#">Secondary link</a></li>
              <li><a href="#">Something else here</a></li>
              <li class="divider"></li>
              <li><a href="#">Another link</a></li>
            </ul>
          </li>
        </ul>
        <form class="form-search navbar-search pull-left" action="">
1255
          <input type="text" class="search-query span2" placeholder="Search">
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
        </form>
        <ul class="nav secondary-nav">
          <li class="dropdown">
            <a href="#" class="dropdown-toggle">Dropdown</a>
            <ul class="dropdown-menu">
              <li><a href="#">Secondary link</a></li>
              <li><a href="#">Something else here</a></li>
              <li class="divider"></li>
              <li><a href="#">Another link</a></li>
            </ul>
          </li>
        </ul>
      </div>
    </div><!-- /topbar-inner -->
  </div><!-- /topbar -->
1271

Mark Otto's avatar
Mark Otto committed
1272
  <div class="row">
1273
    <div class="span4">
1274
      <h4>What is it</h4>
1275
      <p>Our topbar is a fixed bar that houses a website’s logo or name, primary navigation, and search form.</p>
Mark Otto's avatar
Mark Otto committed
1276
    </div>
1277
    <div class="span4">
1278
1279
1280
      <h4>Customizable</h4>
      <p>All elements within, and the entire topbar as well, are optional. You can choose to include a logo/name, nav, search, and a secondary nav&mdash;or any combination of that.</p>
    </div>
1281
    <div class="span4">
1282
      <h4>Dropdowns included</h4>
Mark Otto's avatar
Mark Otto committed
1283
      <p>As part of the main navigation, we’ve included the ability for you to add dropdowns to your nav. Check out the secondary nav above (right aligned) to see how it’s done. Dropdowns <code>&lt;li&gt;</code> tags also support <code>.active</code> for showing current page selection.</p>
Mark Otto's avatar
Mark Otto committed
1284
1285
    </div>
  </div>
Mark Otto's avatar
Mark Otto committed
1286
  <p><strong>Note:</strong> When using the topbar on any page, be sure to account for the overlap it causes by adding <code>padding-top: 40px;</code> to your <code>&lt;body&gt;</code>.</p>
Mark Otto's avatar
Mark Otto committed
1287

1288
  <br>
1289

1290
  <div class="row">
1291
    <div class="span3">
1292
1293
1294
1295
      <h2>Tabs and pills</h2>
      <p>Create simple secondary navigation with a <code>&lt;ul&gt;</code>. Swap between tabs or pills by adding the appropriate class.</p>
      <p>Great for sub-sections of content like our account settings pages and user timelines for toggling between pages of like content. Available in tabbed or pill styles.</p>
    </div>
1296
    <div class="span9">
1297
1298
      <h3>Basic tabs example</h3>
      <p>Tabs can be used as regular navigation (loading external pages in the same tab) or as tabbable content areas for swapping out panes of content. We have a <a href="./javascript.html#tabs">tabs plugin</a> that can be used to integrate the latter.</p>
1299
      <ul class="tabs">
Mark Otto's avatar
Mark Otto committed
1300
        <li class="active"><a href="#">Home</a></li>
1301
1302
1303
1304
        <li><a href="#">Profile</a></li>
        <li><a href="#">Messages</a></li>
        <li><a href="#">Settings</a></li>
        <li><a href="#">Contact</a></li>
1305
        <li class="dropdown" data-dropdown="dropdown">
1306
1307
1308
1309
1310
1311
1312
1313
          <a href="#" class="dropdown-toggle">Dropdown</a>
          <ul class="dropdown-menu">
            <li><a href="#">Secondary link</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Another link</a></li>
          </ul>
        </li>
1314
      </ul>
1315
<pre class="prettyprint linenums">
1316
&lt;ul class="tabs"&gt;
Mark Otto's avatar
Mark Otto committed
1317
1318
1319
1320
1321
  &lt;li class="active"&gt;&lt;a href="#"&gt;Home&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="#"&gt;Profile&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="#"&gt;Messages&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="#"&gt;Settings&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="#"&gt;Contact&lt;/a&gt;&lt;/li&gt;
1322
1323
&lt;/ul&gt;
</pre>
1324
1325
1326
      <h3>Alternate tabs</h3>
      <p>You can also use tabs that are stacked on either side of an element, or on the bottom.</p>
      <div class="row">
1327
        <div class="span2">
1328
1329
1330
1331
1332
1333
1334
1335
1336
          <div class="clearfix">
            <ul class="tabs tabs-left">
              <li class="active"><a href="#">Active link</a></li>
              <li><a href="#">Link</a></li>
              <li><a href="#">Linky link</a></li>
              <li><a href="#">What up link</a></li>
            </ul>
          </div>
        </div>
1337
        <div class="span2">
1338
1339
1340
1341
1342
1343
1344
1345
1346
          <div class="clearfix">
            <ul class="tabs tabs-right">
              <li class="active"><a href="#">Active link</a></li>
              <li><a href="#">Link</a></li>
              <li><a href="#">Linky link</a></li>
              <li><a href="#">What up link</a></li>
            </ul>
          </div>
        </div>
1347
        <div class="span5">
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
          <div class="clearfix">
            <ul class="tabs tabs-bottom">
              <li class="active"><a href="#">Active link</a></li>
              <li><a href="#">Link</a></li>
              <li><a href="#">Linky link</a></li>
            </ul>
          </div>
        </div>
      </div>
      <h3>Tabbable tabs</h3>
      <p>As mentioned above, you can bring your tabs to life with a simple plugin. Here we have integrated all four variations of the tabs&mdash;default (top), right, bottom, left&mdash;with example tab areas.</p>

      <div class="tabbable">
        <ul class="tabs" data-tabs="tabs">
          <li class="active"><a href="#1">Section 1</a></li>
          <li><a href="#2">Section 2</a></li>
          <li><a href="#3">Section 3</a></li>
          <li><a href="#4">Section 4</a></li>
        </ul>
        <div class="tab-content">
          <div class="tab-pane active" id="1">
            <p>Oh hai #1!</p>
          </div>
          <div class="tab-pane" id="2">
            <p>Oh hai #2!</p>
          </div>
          <div class="tab-pane" id="3">
            <p>Oh hai #3!</p>
          </div>
          <div class="tab-pane" id="4">
            <p>Oh hai #4!</p>
          </div>
        </div>
      </div>

       <div class="row">
1384
        <div class="span4">
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
          <div class="tabbable tabs-left">
            <ul class="tabs" data-tabs="tabs">
              <li class="active"><a href="#1">Section 1</a></li>
              <li><a href="#2">Section 2</a></li>
              <li><a href="#3">Section 3</a></li>
            </ul>
            <div class="tab-content" id="myTabContent2">
              <div class="tab-pane active" id="1">
                <h4>Section 1</h4>
                <p>Oh hai!</p>
              </div>
              <div class="tab-pane" id="2">
                <h4>Section 2</h4>
                <p>Oh hai!</p>
              </div>
              <div class="tab-pane" id="3">
                <h4>Section 3</h4>
                <p>Oh hai!</p>
              </div>
            </div>
          </div>
        </div>
1407
        <div class="span5">
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
          <div class="tabbable tabs-right">
            <ul class="tabs" data-tabs="tabs">
              <li class="active"><a href="#1">Section 1</a></li>
              <li><a href="#2">Section 2</a></li>
              <li><a href="#3">Section 3</a></li>
            </ul>
            <div class="tab-content" id="myTabContent3">
              <div class="tab-pane active" id="1">
                <h4>Section 1</h4>
                <p>Oh hai!</p>
              </div>
              <div class="tab-pane" id="2">
                <h4>Section 2</h4>
                <p>Oh hai!</p>
              </div>
              <div class="tab-pane" id="3">
                <h4>Section 3</h4>
                <p>Oh hai!</p>
              </div>
            </div>
          </div>
        </div>
      </div>

      <div class="tabbable tabs-bottom">
        <div class="tab-content">
          <div class="tab-pane active" id="1">
            <p>Oh hai #1!</p>
          </div>
          <div class="tab-pane" id="2">
            <p>Oh hai #2!</p>
          </div>
          <div class="tab-pane" id="3">
            <p>Oh hai #3!</p>
          </div>
          <div class="tab-pane" id="4">
            <p>Oh hai #4!</p>
          </div>
        </div>
        <ul class="tabs" data-tabs="tabs">
          <li class="active"><a href="#1">Section 1</a></li>
          <li><a href="#2">Section 2</a></li>
          <li><a href="#3">Section 3</a></li>
          <li><a href="#4">Section 4</a></li>
        </ul>
      </div>


      <p>In addition to tabs, we have pills! Though a bit more limited in functionality, they share much of the same markup.</p>
      <hr>
      <h3>Basic pills example</h3>
1459
1460
1461
1462
1463
1464
1465
      <ul class="pills">
        <li class="active"><a href="#">Home</a></li>
        <li><a href="#">Profile</a></li>
        <li><a href="#">Messages</a></li>
        <li><a href="#">Settings</a></li>
        <li><a href="#">Contact</a></li>
      </ul>
1466
<pre class="prettyprint linenums">
1467
&lt;ul class="pills"&gt;
Mark Otto's avatar
Mark Otto committed
1468
1469
1470
1471
1472
  &lt;li class="active"&gt;&lt;a href="#"&gt;Home&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="#"&gt;Profile&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="#"&gt;Messages&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="#"&gt;Settings&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="#"&gt;Contact&lt;/a&gt;&lt;/li&gt;
1473
1474
&lt;/ul&gt;
</pre>
1475
1476
1477
1478
1479
1480
1481
1482
1483
      <h3>Vertical pill nav</h3>
      <p>With a pill-style nav, you can also stack the list items to have a simple sidebar. We don't offer left or right aligned versions here because that's easy enough to customize based on your own needs</p>
      <ul class="pills pills-vertical span4">
        <li class="active"><a href="#">Home</a></li>
        <li><a href="#">Profile</a></li>
        <li><a href="#">Messages</a></li>
        <li><a href="#">Settings</a></li>
        <li><a href="#">Contact</a></li>
      </ul>
1484
    </div>
1485
  </div><!-- /row -->
1486

Mark Otto's avatar
Mark Otto committed
1487
1488
  <!-- Breadcrumbs -->
  <div class="row">
1489
    <div class="span3">
Mark Otto's avatar
Mark Otto committed
1490
1491
1492
      <h2>Breadcrumbs</h2>
      <p>Breadcrumb navigation is used as a way to show users where they are within an app or a site, but not for primary navigation.</p>
    </div>
1493
    <div class="span9">
Mark Otto's avatar
Mark Otto committed
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
      <ul class="breadcrumb">
        <li class="active">Home</li>
      </ul>
      <ul class="breadcrumb">
        <li><a href="#">Home</a> <span class="divider">/</span></li>
        <li class="active">Middle page</li>
      </ul>
      <ul class="breadcrumb">
        <li><a href="#">Home</a> <span class="divider">/</span></li>
        <li><a href="#">Middle page</a> <span class="divider">/</span></li>
        <li class="active">Another one</li>
      </ul>
      <ul class="breadcrumb">
        <li><a href="#">Home</a> <span class="divider">/</span></li>
        <li><a href="#">Middle page</a> <span class="divider">/</span></li>
        <li><a href="#">Another one</a> <span class="divider">/</span></li>
        <li class="active">You are here</li>
      </ul>
1512
1513
1514
1515
1516
1517
1518
1519
<pre class="prettyprint linenums">
&lt;ul class="breadcrumb"&gt;
  &lt;li&gt;&lt;a href="#"&gt;Home&lt;/a&gt; &lt;span class="divider"&gt;/&lt;/span&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="#"&gt;Middle page&lt;/a&gt; &lt;span class="divider"&gt;/&lt;/span&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="#"&gt;Another one&lt;/a&gt; &lt;span class="divider"&gt;/&lt;/span&gt;&lt;/li&gt;
  &lt;li class="active"&gt;You are here&lt;/li&gt;
&lt;/ul&gt;
</pre>
Mark Otto's avatar
Mark Otto committed
1520
1521
1522
    </div>
  </div>

1523
1524
  <!-- Pagination -->
  <div class="row">
1525
    <div class="span3">
1526
1527
      <h2>Pagination</h2>
      <p>Ultra simplistic and minimally styled pagination inspired by Rdio. The large block is hard to miss, easily scalable, and provides large click areas.</p>
1528
    </div>
1529
    <div class="span9">
1530
1531
1532
1533
1534
1535
1536
1537
      <div class="pagination">
        <ul>
          <li class="prev disabled"><a href="#">&larr; Previous</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="#">5</a></li>
1538
          <li class="next"><a href="#">Next &raquo;</a></li>
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
        </ul>
      </div>
      <div class="pagination">
        <ul>
          <li class="prev"><a href="#">&larr; Previous</a></li>
          <li class="active"><a href="#">10</a></li>
          <li><a href="#">11</a></li>
          <li><a href="#">12</a></li>
          <li class="disabled"><a href="#"></a></li>
          <li><a href="#">19</a></li>
          <li><a href="#">20</a></li>
          <li><a href="#">21</a></li>
1551
          <li class="next"><a href="#">Next &raquo;</a></li>
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
        </ul>
      </div>
      <div class="pagination">
        <ul>
          <li class="prev"><a href="#">&larr; Previous</a></li>
          <li><a href="#">10</a></li>
          <li><a href="#">11</a></li>
          <li><a href="#">12</a></li>
          <li><a href="#">13</a></li>
          <li><a href="#">14</a></li>
          <li class="active"><a href="#">15</a></li>
          <li><a href="#">16</a></li>
          <li><a href="#">17</a></li>
          <li><a href="#">18</a></li>
          <li><a href="#">19</a></li>
          <li><a href="#">20</a></li>
1568
          <li class="next"><a href="#">Next &raquo;</a></li>
1569
1570
        </ul>
      </div>
1571
<pre class="prettyprint linenums">
1572
1573
&lt;div class="pagination"&gt;
  &lt;ul&gt;
Mark Otto's avatar
Mark Otto committed
1574
1575
1576
1577
1578
1579
1580
    &lt;li class="prev disabled"&gt;&lt;a href="#"&gt;&amp;larr; Previous&lt;/a&gt;&lt;/li>
    &lt;li class="active"&gt;&lt;a href="#"&gt;1&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="#"&gt;2&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="#"&gt;3&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="#"&gt;4&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="#"&gt;5&lt;/a&gt;&lt;/li&gt;
    &lt;li class="next"&gt;&lt;a href="#"&gt;Next &amp;rarr;&lt;/a&gt;&lt;/li>
1581
1582
1583
  &lt;/ul&gt;
&lt;/div&gt;
</pre>
1584
    </div>
1585
  </div><!-- /row -->
1586
1587
1588
1589
1590

</section>



Mark Otto's avatar
Mark Otto committed
1591
1592
<!-- Alerts & Messages
================================================== -->
1593
1594
<section id="alerts">
  <div class="page-header">
1595
1596
    <h1>Alerts &amp; Errors <small>Styles for success, warning, and error messages or alerts</small></h1>
  </div>
1597
  <!-- Basic alert messages -->
1598
  <div class="row">
1599
    <div class="span3">
1600
      <h2>Basic alerts</h2>
1601
      <p><code>.alert-message</code></p>
1602
      <p>One-line messages for highlighting the failure, possible failure, or success of an action. Particularly useful for forms.</p>
1603
      <p><a class="btn js-btn" href="./javascript.html#alerts">Get the javascript &raquo;</a></p>
1604
    </div>
1605
    <div class="span9">
1606
1607
      <div class="alert-message warning">
        <a class="close" href="#">&times;</a>
1608
        <p><strong>Holy guacamole!</strong> Best check yo self, you’re not looking too good.</p>
1609
      </div>
1610
      <div class="alert-message error">
1611
        <a class="close" href="#">&times;</a>
1612
        <p><strong>Oh snap!</strong> Change this and that and try again.</p>
1613
1614
1615
1616
1617
1618
1619
      </div>
      <div class="alert-message success">
        <a class="close" href="#">&times;</a>
        <p><strong>Well done!</strong> You successfully read this alert message.</p>
      </div>
      <div class="alert-message info">
        <a class="close" href="#">&times;</a>
1620
        <p><strong>Heads up!</strong> This is an alert that needs your attention, but it’s not a huge priority just yet.</p>
1621
      </div>
1622
1623
1624
1625
1626
1627
1628
1629

      <h4>Example code</h4>
<pre class="prettyprint linenums">
&lt;div class="alert-message warning"&gt;
  &lt;a class="close" href="#"&gt;&times;&lt;/a&gt;
  &lt;p&gt;&lt;strong&gt;Holy guacamole!&lt;/strong&gt; Best check yo self, you’re not looking too good.&lt;/p&gt;
&lt;/div&gt;
</pre>
1630
    </div>
1631
  </div><!-- /row -->
1632
  <!-- Block messages -->
1633
  <div class="row">
1634
    <div class="span3">
1635
      <h2>Block messages</h2>
1636
      <p><code>.alert-message.block-message</code></p>
1637
      <p>For messages that require a bit of explanation, we have paragraph style alerts. These are perfect for bubbling up longer error messages, warning a user of a pending action, or just presenting information for more emphasis on the page.</p>
1638
      <p><a class="btn js-btn" href="./javascript.html#alerts">Get the javascript &raquo;</a></p>
1639
    </div>
1640
    <div class="span9">
1641
1642
      <div class="alert-message block-message warning">
        <a class="close" href="#">&times;</a>
1643
        <p><strong>Holy guacamole! This is a warning!</strong> 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.</p>
1644
1645
1646
        <div class="alert-actions">
          <a class="btn small" href="#">Take this action</a> <a class="btn small" href="#">Or do this</a>
        </div>
1647
      </div>
1648
      <div class="alert-message block-message error">
1649
        <a class="close" href="#">&times;</a>
1650
1651
1652
1653
1654
1655
        <p><strong>Oh snap! You got an error!</strong> Change this and that and try again.</p>
        <ul>
          <li>Duis mollis est non commodo luctus</li>
          <li>Nisi erat porttitor ligula</li>
          <li>Eget lacinia odio sem nec elit</li>
        </ul>
1656
1657
1658
        <div class="alert-actions">
          <a class="btn small" href="#">Take this action</a> <a class="btn small" href="#">Or do this</a>
        </div>
1659
1660
1661
1662
      </div>
      <div class="alert-message block-message success">
        <a class="close" href="#">&times;</a>
        <p><strong>Well done!</strong> You successfully read this alert message. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Maecenas faucibus mollis interdum.</p>
1663
1664
1665
        <div class="alert-actions">
          <a class="btn small" href="#">Take this action</a> <a class="btn small" href="#">Or do this</a>
        </div>
1666
1667
1668
      </div>
      <div class="alert-message block-message info">
        <a class="close" href="#">&times;</a>
1669
        <p><strong>Heads up!</strong> This is an alert that needs your attention, but it’s not a huge priority just yet.</p>
1670
1671
1672
        <div class="alert-actions">
          <a class="btn small" href="#">Take this action</a> <a class="btn small" href="#">Or do this</a>
        </div>
1673
      </div>
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684

      <h4>Example code</h4>
<pre class="prettyprint linenums">
&lt;div class="alert-message block-message warning"&gt;
  &lt;a class="close" href="#"&gt;&times;&lt;/a&gt;
  &lt;p&gt;&lt;strong&gt;Holy guacamole! This is a warning!&lt;/strong&gt; 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.&lt;/p&gt;
  &lt;div class="alert-actions"&gt;
    &lt;a class="btn small" href="#"&gt;Take this action&lt;/a&gt; &lt;a class="btn small" href="#"&gt;Or do this&lt;/a>
  &lt;/div&gt;
&lt;/div&gt;
</pre>
1685
    </div>
1686
  </div><!-- /row -->
1687
1688
1689
</section>


Mark Otto's avatar
Mark Otto committed
1690
1691
<!-- Popovers
================================================== -->
Mark Otto's avatar
Mark Otto committed
1692
<section id="popovers">
Jacob Thornton's avatar
Jacob Thornton committed
1693
  <div class="page-header">
Mark Otto's avatar
Mark Otto committed
1694
    <h1>Popovers <small>Components for displaying content in modals, tooltips, and popovers</small></h1>
Jacob Thornton's avatar
Jacob Thornton committed
1695
1696
  </div>
  <div class="row">
1697
    <div class="span3">
Mark Otto's avatar
Mark Otto committed
1698
      <h2>Modals</h2>
1699
      <p>Modals&mdash;dialogs or lightboxes&mdash;are great for contextual actions in situations where it’s important that the background context be maintained.</p>
1700
      <p><a class="btn js-btn" href="./javascript.html#modal">Get the javascript &raquo;</a></p>
Jacob Thornton's avatar
Jacob Thornton committed
1701
    </div>
1702
    <div class="span9">
Jacob Thornton's avatar
Jacob Thornton committed
1703
      <div class="well" style="background-color: #888; border: none; padding: 40px;">
1704
        <!-- Modal -->
1705
        <div class="modal" style="position: relative; top: auto; left: auto; margin: 0 auto; z-index: 1">
Jacob Thornton's avatar
Jacob Thornton committed
1706
          <div class="modal-header">
1707
            <a href="#" class="close js-dismiss">&times;</a>
1708
            <h3>Modal Heading</h3>
Jacob Thornton's avatar
Jacob Thornton committed
1709
1710
          </div>
          <div class="modal-body">
1711
            <p>One fine body…</p>
Jacob Thornton's avatar
Jacob Thornton committed
1712
1713
          </div>
          <div class="modal-footer">
Mark Otto's avatar
Mark Otto committed
1714
            <a href="#" class="btn primary">Primary</a>
1715
            <a href="#" class="btn">Secondary</a>
Jacob Thornton's avatar
Jacob Thornton committed
1716
1717
1718
          </div>
        </div>
      </div>
1719
    </div>
1720
  </div><!-- /row -->
1721

1722
  <!-- Tooltips -->
1723
  <div class="row">
1724
    <div class="span3">
Jacob Thornton's avatar
Jacob Thornton committed
1725
      <h2>Tooltips</h2>
1726
      <p>Twipsies are super useful for aiding a confused user and pointing them in the right direction.</p>
1727
      <p><a class="btn js-btn" href="./javascript.html#twipsy">Get the javascript &raquo;</a></p>
1728
    </div>
1729
    <div class="span9">
1730
1731
1732
      <div class="twipsies well">
        <div style="position: relative">
          <p class="muted" style="margin-bottom: 0">
Jacob Thornton's avatar
Jacob Thornton committed
1733
Lorem ipsum dolar sit amet illo error <a href="#" title="below">ipsum</a> veritatis aut iste perspiciatis iste voluptas natus illo quasi odit aut natus consequuntur consequuntur, aut natus illo voluptatem odit perspiciatis laudantium rem doloremque totam voluptas. <a href="#" title="right">Voluptasdicta</a> eaque beatae aperiam ut enim voluptatem explicabo explicabo, voluptas quia odit fugit accusantium totam totam architecto explicabo sit quasi fugit fugit, totam doloremque unde sunt <a href="#" title="left">sed</a> dicta quae accusantium fugit voluptas nemo voluptas voluptatem <a href="#" title="above">rem</a> quae aut veritatis quasi quae.
1734
          </p>
Jacob Thornton's avatar
Jacob Thornton committed
1735
1736
1737
        </div>
      </div>
    </div>
1738
  </div><!-- /row -->
Jacob Thornton's avatar
Jacob Thornton committed
1739

1740
  <!-- Popovers -->
Mark Otto's avatar
Mark Otto committed
1741
  <div class="row">
1742
    <div class="span3">
Mark Otto's avatar
Mark Otto committed
1743
      <h2>Popovers</h2>
Mark Otto's avatar
Mark Otto committed
1744
      <p>Use popovers to provide subtextual information to a page without affecting layout.</p>
1745
      <p><a class="btn js-btn" href="./javascript.html#popover">Get the javascript &raquo;</a></p>
Mark Otto's avatar
Mark Otto committed
1746
    </div>
1747
    <div class="span9">
Mark Otto's avatar
Mark Otto committed
1748
      <div class="well popover-well">
Jacob Thornton's avatar
Jacob Thornton committed
1749
1750
         <div class="popover-wrapper">
          <div class="popover left">
Mark Otto's avatar
Mark Otto committed
1751
1752
            <div class="arrow"></div>
            <div class="inner">
Jacob Thornton's avatar
Jacob Thornton committed
1753
              <h3 class="title">Popover Title</h3>
Mark Otto's avatar
Mark Otto committed
1754
1755
1756
1757
1758
              <div class="content">
                <p>Etiam porta sem malesuada magna mollis euismod. Maecenas faucibus mollis interdum. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
              </div>
            </div>
          </div>
Jacob Thornton's avatar
Jacob Thornton committed
1759
          <img class="large-bird" src="assets/img/bird.png" >
Mark Otto's avatar
Mark Otto committed
1760
1761
1762
        </div>
      </div>
    </div>
1763
  </div><!-- /row -->
Jacob Thornton's avatar
Jacob Thornton committed
1764
</section>
1765

Mark Otto's avatar
Mark Otto committed
1766

1767
1768
1769
1770
1771
<!-- Using Javascript w/ Bootstrap
 ================================================== -->

 <section id="javascript">
   <div class="page-header">
1772
     <h1>Using javascript with Bootstrap <small>An index of plugins to get you started</small></h1>
1773
1774
   </div>
   <div class="row">
1775
     <div class="span3">
1776
       <h2>Getting started</h2>
1777
       <p>Integrating javascript with the Bootstrap library is super easy. Below we go over the basics and provide you with some awesome plugins to get you started!</p>
1778
       <p><a class="btn primary" href="./javascript.html">View javascript docs &raquo;</a></p>
1779
     </div>
1780
     <div class="span9">
1781
1782
      <h3>What's included</h3>
       <p>Bring some of Bootstrap's primary components to life with new custom plugins that work with <a href="http://jquery.com/" target="_blank">jQuery</a> and <a href="http://ender.no.de" target="_blank">Ender</a>. We encourage you to extend and modify them to fit your specific development needs.</p>
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
       <table class="zebra-striped">
         <thead>
           <tr>
             <th style="width: 150px;">File</th>
             <th>Description</th>
           </tr>
         </thead>
         <tbody>
           <tr>
             <td><a href="./javascript.html#modal">bootstrap-modal.js</a></td>
             <td>Our Modal plugin is a <strong>super</strong> slim take on the traditional modal js plugin! We took special care to include only the bare functionality that we require at twitter.</td>
           </tr>
           <tr>
             <td><a href="./javascript.html#alerts">bootstrap-alerts.js</a></td>
             <td>The alert plugin is a super tiny class for adding close functionality to alerts.</td>
           </tr>
           <tr>
             <td><a href="./javascript.html#dropdowns">bootstrap-dropdown.js</a></td>
Jacob Thornton's avatar
Jacob Thornton committed
1801
             <td>This plugin is for adding dropdown interaction to the bootstrap topbar or tabbed navigations.</td>
1802
           </tr>
1803
1804
1805
1806
           <tr>
             <td><a href="./javascript.html#scrollspy">bootstrap-scrollspy.js</a></td>
             <td>The ScrollSpy plugin is for adding an auto updating nav based on scroll position to the bootstrap topbar.</td>
           </tr>
1807
1808
           <tr>
             <td><a href="./javascript.html#tabs">bootstrap-tabs.js</a></td>
1809
             <td>This plugin adds quick, dynamic tab and pill functionality for cycling through local content.</td>
1810
           </tr>
1811
1812
           <tr>
             <td><a href="./javascript.html#twipsy">bootstrap-twipsy.js</a></td>
1813
             <td>Based on the excellent jQuery.tipsy plugin written by Jason Frame; twipsy is an updated version, which doesn't rely on images, uses css3 for animations, and data-attributes for local title storage!</td>
1814
1815
1816
1817
1818
1819
1820
           </tr>
           <tr>
             <td><a href="./javascript.html#popover">bootstrap-popover.js</a></td>
             <td>The popover plugin provides a simple interface for adding popovers to your application. It extends the <a href="#twipsy">boostrap-twipsy.js</a> plugin, so be sure to grab that file as well when including popovers in your project!</td>
           </tr>
         </tbody>
       </table>
1821
1822
1823
1824
       <h3>Is javascript necessary?</h3>
       <p><strong>Nope!</strong> Bootstrap is designed first and foremost to be a CSS library. This javascript provides a basic interactive layer on top of the included styles.</p>
       <p>However, for those who do need javascript, we've provided the plugins above to help you understand how to integrate Bootstrap with javascript and to give you a quick, lightweight option for the basic functionality right away.</p>
       <p>For more information and to see some live demos, please refer to our <a href="./javascript.html">plugin documentation page</a>.</p>
1825
1826
1827
     </div>
   </div>

Mark Otto's avatar
Mark Otto committed
1828

Mark Otto's avatar
Mark Otto committed
1829
1830
<!-- Using Bootstrap w/ Less
================================================== -->
1831
<section id="less">
Mark Otto's avatar
Mark Otto committed
1832
<div class="page-header">
1833
  <h1>Using Bootstrap with Less <small>Supercharge your CSS with variables, mixins, and functions</small></h1>
Mark Otto's avatar
Mark Otto committed
1834
1835
</div>
<div class="row">
1836
  <div class="span3">
1837
1838
    <p>Bootstrap was built with <a href="http://markdotto.com/bootstrap/">Preboot</a>, an open-source pack of mixins and variables to be used in conjunction with <a href="http://lesscss.org" target="_blank">Less</a>, a CSS preprocessor for faster and easier web development.</p>
    <p>Check out how we used Preboot in Bootstrap and how you can make use of it should you choose to run Less on your next project.</p>
Mark Otto's avatar
Mark Otto committed
1839
  </div>
1840
  <div class="span9">
Mark Otto's avatar
Mark Otto committed
1841
    <h2>How to use it</h2>
1842
    <p>Use this option to make full use of Bootstrap’s Less variables, mixins, and nesting in CSS via javascript in your browser.</p>
1843
<pre class="prettyprint linenums">
Jacob Thornton's avatar
Jacob Thornton committed
1844
&lt;link rel="stylesheet/less" href="less/bootstrap.less" media="all" /&gt;
Mark Otto's avatar
Mark Otto committed
1845
&lt;script src="js/less-1.1.3.min.js"&gt;&lt;/script&gt;</pre>
1846
<p>Not feeling the .js solution? <a href="http://incident57.com/less" target="_blank">Try the Less Mac app</a> or <a href="http://lesscss.org/#-client-side-usage" target="_blank">use Node.js</a> to compile when you deploy your code.</p>
Mark Otto's avatar
Mark Otto committed
1847

1848
1849
    <h2>What’s included</h2>
    <p>Here are some of the highlights of what’s included in Twitter Bootstrap as part of Bootstrap. Head over to the Bootstrap website or Github project page to download and learn more.</p>
1850
    <h3>Variables</h3>
1851
    <p>Variables in Less are perfect for maintaining and updating your CSS headache free. When you want to change a color value or a frequently used value, update it in one spot and you’re set.</p>
1852
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
// Links
@linkColor:         #8b59c2;
@linkColorHover:    darken(@linkColor, 10);

// Grays
@black:             #000;
@grayDark:          lighten(@black, 25%);
@gray:              lighten(@black, 50%);
@grayLight:         lighten(@black, 70%);
@grayLighter:       lighten(@black, 90%);
@white:             #fff;

// Accent Colors
@blue:              #08b5fb;
@green:             #46a546;
@red:               #9d261d;
@yellow:            #ffc40d;
@orange:            #f89406;
@pink:              #c3325f;
@purple:            #7a43b6;

1874
1875
1876
// Baseline grid
@basefont:          13px;
@baseline:          18px;
Mark Otto's avatar
Mark Otto committed
1877
1878
1879
</pre>

<h3>Commenting</h3>
1880
<p>Less also provides another style of commenting in addition to CSS’s normal <code>/* ... */</code> syntax.</p>
1881
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
1882
1883
1884
1885
1886
// This is a comment
/* This is also a comment */
</pre>

<h3>Mixins up the wazoo</h3>
1887
<p>Mixins are basically includes or partials for CSS, allowing you to combine a block of code into one. They’re great for vendor prefixed properties like <code>box-shadow</code>, cross-browser gradients, font stacks, and more. Below is a sample of the mixins that are included with Bootstrap.</p>
Mark Otto's avatar
Mark Otto committed
1888
<h4>Font stacks</h4>
1889
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
#font {
  .shorthand(@weight: normal, @size: 14px, @lineHeight: 20px) {
    font-size: @size;
    font-weight: @weight;
    line-height: @lineHeight;
  }
  .sans-serif(@weight: normal, @size: 14px, @lineHeight: 20px) {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: @size;
    font-weight: @weight;
    line-height: @lineHeight;
  }
1902
  ...
Mark Otto's avatar
Mark Otto committed
1903
1904
1905
}
</pre>
<h4>Gradients</h4>
1906
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
1907
#gradient {
1908
  ...
Mark Otto's avatar
Mark Otto committed
1909
1910
1911
  .vertical (@startColor: #555, @endColor: #333) {
    background-color: @endColor;
    background-repeat: repeat-x;
1912
1913
1914
1915
1916
1917
1918
    background-image: -khtml-gradient(linear, left top, left bottom, from(@startColor), to(@endColor)); // Konqueror
    background-image: -moz-linear-gradient(@startColor, @endColor); // FF 3.6+
    background-image: -ms-linear-gradient(@startColor, @endColor); // IE10
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, @startColor), color-stop(100%, @endColor)); // Safari 4+, Chrome 2+
    background-image: -webkit-linear-gradient(@startColor, @endColor); // Safari 5.1+, Chrome 10+
    background-image: -o-linear-gradient(@startColor, @endColor); // Opera 11.10
    background-image: linear-gradient(@startColor, @endColor); // The standard
Mark Otto's avatar
Mark Otto committed
1919
  }
1920
  ...
Mark Otto's avatar
Mark Otto committed
1921
1922
1923
}
</pre>

1924
<h3>Operations</h3>
1925
<p>Get fancy and perform some math to generate flexible and powerful mixins like the one below.</p>
1926
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
1927
1928
1929
1930
// Griditude
@gridColumns:       16;
@gridColumnWidth:   40px;
@gridGutterWidth:   20px;
1931
@siteWidth:         (@gridColumns * @gridColumnWidth) + (@gridGutterWidth * (@gridColumns - 1));
Mark Otto's avatar
Mark Otto committed
1932

1933
// Make some columns
Mark Otto's avatar
Mark Otto committed
1934
1935
1936
1937
.columns(@columnSpan: 1) {
  width: (@gridColumnWidth * @columnSpan) + (@gridGutterWidth * (@columnSpan - 1));
}
</pre>
1938

1939
    <h2 id="compiling">Compiling Less</h2>
1940
1941
    <p>After modifying the <code>.less</code> files in /lib/, you'll need to recompile them in order to regenerate the bootstrap-*.*.*.css and bootstrap-*.*.*.min.css files. If you're submitting a pull request to GitHub, you must always recompile.</p>
    <h3>Ways to compile</h3>
Mark Otto's avatar
Mark Otto committed
1942
    <table class="zebra-striped">
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
      <thead>
        <tr>
          <th style="width: 120px;">Method</th>
          <th>Steps</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td>Node with makefile</td>
          <td>
1953
1954
1955
1956
            <p>Install the less command line compiler with npm by running the following command:</p>
            <pre>$ npm install lessc</pre>
            <p>Once installed just run <code>make</code> from the root of your bootstrap directory and you're all set.</p>
            <p>Additionally, if you have <a href="https://github.com/mynyml/watchr">watchr</a> installed, you may run <code>make watch</code> to have bootstrap automatically rebuilt every time you edit a file in the bootstrap lib (this isn't required, just a convenience method).</p>
1957
1958
1959
1960
          </td>
        </tr>
          <td>Javascript</td>
          <td>
1961
            <p><a href="http://lesscss.org/">Download the latest Less.js</a> and include the path to it (and Bootstrap) in the <code>head</code>.</p>
1962
<pre class="prettyprint linenums">
1963
1964
1965
1966
1967
1968
1969
1970
1971
&lt;link rel="stylesheet/less" href="/path/to/bootstrap.less"&gt;
&lt;script src="/path/to/less.js"&gt;&lt;/script&gt;
</pre>
            <p>To recompile the .less files, just save them and reload your page. Less.js compiles them and stores them in local storage.</p>
          </td>
        </tr>
        <tr>
          <td>Command line</td>
          <td>
1972
            <p>If you already have the less command line tool installed, simply run the following command:</p>
1973
              <pre>$ lessc ./lib/bootstrap.less > bootstrap.css</pre>
1974
            <p>Be sure to include <code>--compress</code> in that command if you're trying to save some bytes!</p>
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
          </td>
        </tr>
        <tr>
          <td>Less Mac app</td>
          <td>
            <p><a href="http://incident57.com/less/">The unofficial Mac app</a> watches directories of .less files and compiles the code to local files after every save of a watched .less file.</p>
            <p>If you like, you can toggle preferences in the app for automatic minifying and which directory the compiled files end up in.</p>
          </td>
        </tr>
      </tbody>
    </table>
Mark Otto's avatar
Mark Otto committed
1986
1987
1988
1989
1990
  </div>
</div>

</section>

1991

1992
1993
1994
1995
1996
1997
1998
      <footer class="footer">
        <p class="pull-right"><a href="#">Back to top</a></p>
        <p>
          Designed and built with all the love in the world <a href="http://twitter.com/twitter" target="_blank">@twitter</a> by <a href="http://twitter.com/mdo" target="_blank">@mdo</a> and <a href="http://twitter.com/fat" target="_blank">@fat</a>.<br>
          Code licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>. Documentation licensed under <a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.
        </p>
      </footer>
1999

2000
2001
2002
    </div><!-- /container -->


2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
    <!-- Le javascript -->
    <script src="http://code.jquery.com/jquery-1.5.2.min.js"></script>
    <script src="http://autobahn.tablesorter.com/jquery.tablesorter.min.js"></script>
    <script src="assets/js/google-code-prettify/prettify.js"></script>
    <script>$(function () { prettyPrint() })</script>
    <script src="../js/bootstrap-dropdown.js"></script>
    <script src="../js/bootstrap-twipsy.js"></script>
    <script src="../js/bootstrap-scrollspy.js"></script>
    <script src="assets/js/application.js"></script>

2013
  </body>
2014
</html>