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

14
    <!-- Le styles -->
15
    <link href="../bootstrap-1.3.0.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 javascript -->
Jacob Thornton's avatar
Jacob Thornton committed
20
    <script src="http://code.jquery.com/jquery-1.5.2.min.js"></script>
Jacob Thornton's avatar
Jacob Thornton committed
21
    <script src="http://autobahn.tablesorter.com/jquery.tablesorter.min.js"></script>
Mark Otto's avatar
Mark Otto committed
22
    <script src="assets/js/google-code-prettify/prettify.js"></script>
23
    <script>$(function () { prettyPrint() })</script>
Jacob Thornton's avatar
Jacob Thornton committed
24
    <script src="../js/bootstrap-dropdown.js"></script>
Jacob Thornton's avatar
Jacob Thornton committed
25
    <script src="assets/js/application.js"></script>
26
    <script src="assets/js/application-scrollspy.js"></script>
27
28
29
30
31
32

    <!-- Le fav and touch icons -->
    <link rel="shortcut icon" href="images/favicon.ico">
    <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
    <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
    <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
33
34
  </head>

35
  <body>
36

Mark Otto's avatar
Mark Otto committed
37
38
    <!-- Topbar
    ================================================== -->
Mark Otto's avatar
Mark Otto committed
39
    <div class="topbar">
40
      <div class="topbar-inner">
Jacob Thornton's avatar
Jacob Thornton committed
41
42
        <div class="container">
          <h3><a href="#">Bootstrap</a></h3>
43
          <ul class="nav">
Jacob Thornton's avatar
Jacob Thornton committed
44
45
46
47
48
49
50
51
52
53
            <li class="active"><a href="#masthead">Overview</a></li>
            <li><a href="#about">About</a></li>
            <li><a href="#grid-system">Grid</a></li>
            <li><a href="#layouts">Layouts</a></li>
            <li><a href="#typography">Typography</a></li>
            <li><a href="#tables">Tables</a></li>
            <li><a href="#forms">Forms</a></li>
            <li><a href="#navigation">Navigation</a></li>
            <li><a href="#alerts">Alerts</a></li>
            <li><a href="#popovers">Popovers</a></li>
54
            <li><a href="#javascript">Javascript</a></li>
Jacob Thornton's avatar
Jacob Thornton committed
55
56
57
            <li><a href="#less">Less</a></li>
          </ul>
        </div>
58
59
60
      </div>
    </div>

Mark Otto's avatar
Mark Otto committed
61
62
    <!-- Masthead (blueprinty thing)
    ================================================== -->
63
    <div id="masthead">
64
65
      <div class="inner">
        <div class="container">
66
          <h1>Bootstrap, from Twitter</h1>
67
          <p class="lead">
68
            Bootstrap is a toolkit from Twitter designed to kickstart development of webapps and sites.<br />
69
70
            It includes base CSS and HTML for typography, forms, buttons, tables, grids, navigation, and more.<br />
          </p>
71
          <p><strong>Nerd alert:</strong> Bootstrap is <a href="#less" title="Read about using Bootstrap with Less">built with Less</a> and was designed to work out of the gate with modern browsers in mind.</p>
72
        </div><!-- /container -->
73
74
75
      </div>
    </div>

Mark Otto's avatar
Mark Otto committed
76
77
    <!-- Quickstart options
    ================================================== -->
78
79
80
    <div class="quickstart">
      <div class="container">
        <div class="row">
Mark Otto's avatar
Mark Otto committed
81
          <div class="span5">
82
83
84
            <h6>Hotlink the CSS</h6>
            <p>For the quickest and easiest start, just copy this snippet into your webpage.</p>
            <form>
85
              <textarea class="copy-code" rows="1">&lt;link rel="stylesheet" href="http://twitter.github.com/bootstrap/assets/css/bootstrap-1.3.0.min.css"></textarea>
86
87
            </form>
          </div>
Mark Otto's avatar
Mark Otto committed
88
          <div class="span5">
89
90
            <h6>Use it with Less</h6>
            <p>A fan of using Less? No problem, just clone the repo and add these lines:</p>
91
            <form>
Jacob Thornton's avatar
Jacob Thornton committed
92
              <textarea class="copy-code" rows="2">&lt;link rel="stylesheet/less" href="/path/to/bootstrap.less"&gt;
Jacob Thornton's avatar
Jacob Thornton committed
93
&lt;script src="/path/to/less.js"&gt;&lt;/script&gt;</textarea>
94
95
            </form>
          </div>
Mark Otto's avatar
Mark Otto committed
96
          <div class="span5">
97
            <h6>Fork on GitHub</h6>
98
            <p>Download, fork, pull, file issues, and more with the official Bootstrap repo on Github.</p>
Jacob Thornton's avatar
Jacob Thornton committed
99
            <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
100
            <p class="current-version">Currently <a href="https://github.com/twitter/bootstrap/wiki/Changelog">v1.2.0</a></p>
101
          </div>
102
        </div><!-- /row -->
103
      </div>
104
    </div>
105
106
107

    <div class="container">

Mark Otto's avatar
Mark Otto committed
108
109
110
111


<!-- About Bootstrap
================================================== -->
112
113
114
115
116
<section id="about">
  <div class="page-header">
    <h1>About Bootstrap <small>Brief history, browser support, and more</small></h1>
  </div>
  <div class="row">
117
    <div class="span-one-third">
118
      <h3>History</h3>
119
120
121
122
      <p>In the earlier days of Twitter, engineers used almost any library they were familiar with to meet front-end requirements. Bootstrap began as an answer to the challenges that presented and development quickly accelerated during Twitter’s first Hackweek.</p>
      <p>With the help and feedback of many engineers at Twitter, Bootstrap has grown significantly to encompass not only basic styles, but more elegant and durable front-end design patterns.</p>
      <p>Read more on <a href="https://dev.twitter.com/blog/bootstrap-twitter">dev.twitter.com &rsaquo;</a></p>
    </div>
123
    <div class="span-one-third">
124
      <h3>Browser support</h3>
Jacob Thornton's avatar
Jacob Thornton committed
125
      <p>Bootstrap is tested and supported in major modern browsers like Chrome, Safari, Internet Explorer, and Firefox.</p>
Jacob Thornton's avatar
Jacob Thornton committed
126
      <img src="assets/img/browsers.png" width="258px" height="48px" alt="Tested and supported in Chrome, Safari, Internet Explorer, and Firefox">
127
128
129
      <ul>
        <li>Latest Safari</li>
        <li>Latest Google Chrome</li>
130
131
        <li>Firefox 4+</li>
        <li>Internet Explorer 7+</li>
Jacob Thornton's avatar
Jacob Thornton committed
132
        <li>Opera 11</li>
133
134
      </ul>
    </div>
135
    <div class="span-one-third">
136
137
138
139
140
141
142
143
      <h3>What's included</h3>
      <p>Bootstrap comes complete with compiled CSS, uncompiled, and example templates.</p>
      <ul>
        <li>All original .less files</li>
        <li>Fully compiled and minified CSS</li>
        <li>Complete styleguide documentation</li>
        <li>Example page template (more to come soon)</li>
      </ul>
144
    </div>
145
  </div><!-- /row -->
146
147
148
149
150
151
152
153

  <div class="row">
    <div class="span12">
      <h3>Quick-start examples</h3>
      <p>Need some quick templates? Check out these basic examples we've put together:</p>

      <div class="row">
        <div class="span4">
154
          <a href="../examples/hero.html"><img src="assets/img/example-diagram-01.png" class="diagram" alt="Simple three-column layout with hero unit"></a>
155
156
        </div>
        <div class="span4">
157
          <a href="../examples/fluid.html"><img src="assets/img/example-diagram-02.png" class="diagram" alt="Fluid layout with static sidebar"></a>
158
159
        </div>
        <div class="span4">
160
          <a href="../examples/container-app.html"><img src="assets/img/example-diagram-03.png" class="diagram" alt="Simple hanging container for apps"></a>
161
162
163
164
165
166
167
168
        </div>
      </div>
    </div>
    <div class="span4">
      <h3>Theming Bootstrap</h3>
      <p>Starting with v1.3.0, Bootstrap comes equipped with a customizable Less file, Theme.less. It's designed to replace default values in the library and provide a one-stop-shop for adding-on.</p>
    </div>
  </div><!-- /row -->
169
</section>
170

Mark Otto's avatar
Mark Otto committed
171
172
173
174


<!-- Grid system
================================================== -->
175
<section id="grid-system">
176
177
  <div class="page-header">
    <h1>Grid system <small>Rock the standard 940px or roll your own</small></h1>
178
  </div>
179
  <div class="row">
Mark Otto's avatar
Mark Otto committed
180
    <div class="span4">
181
182
183
      <h2>Default grid</h2>
      <p>The default grid system provided as part of Bootstrap is a 940px wide 16-column grid. It’s a flavor of the popular 960 grid system, but without the additional margin/padding on the left and right sides.</p>
    </div>
Mark Otto's avatar
Mark Otto committed
184
    <div class="span12">
185
186
      <h3>Example grid markup</h3>
      <p>As shown here, a basic layout can be created with two "columns," each spanning a number of the 16 foundational columns we defined as part of our grid system. See the examples below for more variations.</p>
187
<pre class="prettyprint linenums">
188
&lt;div class="row"&gt;
Mark Otto's avatar
Mark Otto committed
189
  &lt;div class="span6"&gt;
190
191
    ...
  &lt;/div&gt;
Mark Otto's avatar
Mark Otto committed
192
  &lt;div class="span10"&gt;
193
194
    ...
  &lt;/div&gt;
195
196
&lt;/div&gt;
</pre>
197
    </div>
198
  </div><!-- /row -->
199
  <div class="row show-grid" title="16 column layout">
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
    <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>
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
    <div class="span1">1</div>
216
  </div><!-- /row -->
217
  <div class="row show-grid" title="8 column layout">
Mark Otto's avatar
Mark Otto committed
218
219
220
221
222
223
224
225
    <div class="span2">2</div>
    <div class="span2">2</div>
    <div class="span2">2</div>
    <div class="span2">2</div>
    <div class="span2">2</div>
    <div class="span2">2</div>
    <div class="span2">2</div>
    <div class="span2">2</div>
226
  </div><!-- /row -->
227
  <div class="row show-grid" title="Example uncommon layout">
Mark Otto's avatar
Mark Otto committed
228
229
230
231
232
    <div class="span3">3</div>
    <div class="span3">3</div>
    <div class="span3">3</div>
    <div class="span3">3</div>
    <div class="span3">3</div>
233
    <div class="span1 column">1</div>
234
  </div><!-- /row -->
235
  <div class="row show-grid" title="Four column layout">
Mark Otto's avatar
Mark Otto committed
236
237
238
239
    <div class="span4">4</div>
    <div class="span4">4</div>
    <div class="span4">4</div>
    <div class="span4">4</div>
240
  </div><!-- /row -->
241
  <div class="row show-grid" title="Default three column layout">
242
243
244
    <div class="span-one-third">1/3</div>
    <div class="span-one-third">1/3</div>
    <div class="span-one-third">1/3</div>
245
  </div><!-- /row -->
Mark Otto's avatar
Mark Otto committed
246
  <div class="row show-grid" title="One-third and two-thirds layout">
247
248
    <div class="span-one-third">1/3</div>
    <div class="span-two-thirds">2/3</div>
Mark Otto's avatar
Mark Otto committed
249
  </div><!-- /row -->
250
  <div class="row show-grid" title="Irregular three column layout">
Mark Otto's avatar
Mark Otto committed
251
252
253
    <div class="span4">4</div>
    <div class="span6">6</div>
    <div class="span6">6</div>
254
  </div><!-- /row -->
255
  <div class="row show-grid" title="Half and half">
Mark Otto's avatar
Mark Otto committed
256
257
    <div class="span8">8</div>
    <div class="span8">8</div>
258
  </div><!-- /row -->
259
  <div class="row show-grid" title="Example uncommon two-column layout">
Mark Otto's avatar
Mark Otto committed
260
261
    <div class="span5">5</div>
    <div class="span11">11</div>
262
  </div><!-- /row -->
263
  <div class="row show-grid" title="Unnecessary single column layout">
Mark Otto's avatar
Mark Otto committed
264
    <div class="span16">16</div>
265
  </div><!-- /row -->
266
267
268
269

  <br>

  <h2>Offsetting columns</h2>
270
  <div class="row show-grid">
Mark Otto's avatar
Mark Otto committed
271
    <div class="span4">4</div>
272
    <div class="span8 offset4">8 offset 4</div>
273
  </div><!-- /row -->
Mark Otto's avatar
Mark Otto committed
274
  <div class="row show-grid">
275
    <div class="span-one-third offset-two-thirds">1/3 offset 2/3s</div>
Mark Otto's avatar
Mark Otto committed
276
  </div><!-- /row -->
277
  <div class="row show-grid">
278
279
    <div class="span4 offset4">4 offset 4</div>
    <div class="span4 offset4">4 offset 4</div>
280
  </div><!-- /row -->
281
  <div class="row show-grid">
282
283
    <div class="span5 offset3">5 offset 3</div>
    <div class="span5 offset3">5 offset 3</div>
284
  </div><!-- /row -->
285
  <div class="row show-grid">
286
    <div class="span10 offset6">10 offset 6</div>
287
  </div><!-- /row -->
288

289
290
291
292
293
294
295
296
297
  <br>

  <div class="row">
    <div class="span4">
      <h2>Nesting columns</h2>
      <p>Nest your content if you must by creating a <code>.row</code> within an existing column.</p>
    </div>
    <div class="span12">
      <h4>Example of nested columns</h4>
298
      <div class="row show-grid">
299
300
301
302
303
304
305
306
307
308
        <div class="span12">
          Level 1 of column
          <div class="row show-grid">
            <div class="span6">
              Level 2
            </div>
            <div class="span6">
              Level 2
            </div>
          </div>
309
310
311
        </div>
      </div>
    </div>
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
  </div>

  <br>

  <div class="row">
    <div class="span4">
      <h2>Roll your own grid</h2>
      <p>Built into Bootstrap are a handful of variables for customizing the default 940px grid system. With a bit of customization, you can modify the size of columns, their gutters, and the container they reside in.</p>
    </div>
    <div class="span12">
      <h3>Inside the grid</h3>
      <p>The variables needed to modify the grid system currently all reside in <code>preboot.less</code>.</p>
      <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>
355
356
357
358
359
360
361
      <h3>Now to customize</h3>
      <p>Modifying the grid means changing the three <code>@grid-*</code> variables and recompiling the Less files.</p>
      <p>Bootstrap comes equipped to handle a grid system with up to 24 columns; the default is just 16. Here's how your grid variables would look customized to a 24-column grid.</p>
      <pre class="prettyprint">@gridColumns:       24;
@gridColumnWidth:   20px;
@gridGutterWidth:   20px;</pre>
      <p>Once recompiled, you'll be set!</p>
362
363
    </div>
  </div>
364
365
366
367
</section>



Mark Otto's avatar
Mark Otto committed
368
369
<!-- Layouts (Default and fluid)
================================================== -->
370
371
372
373
<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
374

375
  <div class="row">
Mark Otto's avatar
Mark Otto committed
376
    <div class="span8">
377
      <h2>Fixed layout</h2>
378
      <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>
379
380
381
      <div class="mini-layout">
        <div class="mini-layout-body"></div>
      </div>
382
<pre class="prettyprint linenums">
383
384
385
386
387
388
&lt;body&gt;
  &lt;div class="container"&gt;
    ...
  &lt;/div&gt;
&lt;/body&gt;
</pre>
389
    </div><!-- /col -->
Mark Otto's avatar
Mark Otto committed
390
    <div class="span8">
391
      <h2>Fluid layout</h2>
392
      <p>An alternative, flexible fluid page structure with min- and max-widths and a left-hand sidebar. Great for apps and docs.</p>
393
394
395
396
      <div class="mini-layout fluid">
        <div class="mini-layout-sidebar"></div>
        <div class="mini-layout-body"></div>
      </div>
397
<pre class="prettyprint linenums">
398
399
400
401
402
403
404
405
406
407
408
&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>
409
410
    </div><!-- /col -->
  </div><!-- /row -->
411
412
413
414
</section>



Mark Otto's avatar
Mark Otto committed
415
416
<!-- Typography
================================================== -->
417
<section id="typography">
Mark Otto's avatar
Mark Otto committed
418
419
  <div class="page-header">
    <h1>Typography <small>Headings, paragraphs, lists, and other inline type elements</small></h1>
420
  </div>
421

Mark Otto's avatar
Mark Otto committed
422
423
  <!-- Headings & Paragraph Copy -->
  <div class="row">
Mark Otto's avatar
Mark Otto committed
424
    <div class="span4">
425
      <h2>Headings &amp; copy</h2>
Mark Otto's avatar
Mark Otto committed
426
      <p>A standard typographic hierarchy for structuring your webpages.</p>
427
428
      <p>The entire typographic grid is based on two Less variables in our preboot.less file: <code>@basefont</code> and <code>@baseline</code>. The first is the base font-size used throughout and the second is the base line-height.</p>
      <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
429
    </div>
Mark Otto's avatar
Mark Otto committed
430
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
431
432
433
434
435
436
437
      <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
438
    <div class="span8">
Mark Otto's avatar
Mark Otto committed
439
440
441
442
      <h3>Example paragraph</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>
      <h1>Example heading <small>Has sub-heading&hellip;</small></h1>
    </div>
443
444
  </div>

Mark Otto's avatar
Mark Otto committed
445
446
  <!-- Misc Elements -->
  <div class="row">
Mark Otto's avatar
Mark Otto committed
447
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
448
449
450
451
452
453
454
455
456
      <h2>Misc. elements</h2>
      <p>Using emphasis, addresses, &amp; abbreviations</p>
      <p>
        <code>&lt;strong&gt;</code>
        <code>&lt;em&gt;</code>
        <code>&lt;address&gt;</code>
        <code>&lt;abbr&gt;</code>
      </p>
    </div>
Mark Otto's avatar
Mark Otto committed
457
    <div class="span12">
Mark Otto's avatar
Mark Otto committed
458
459
460
461
      <h4>When to use</h4>
      <p>Emphasis tags (<code>&lt;strong&gt;</code> and <code>&lt;em&gt;</code>) should be used to indicate additional importance or emphasis of a word or phrase relative to its surrounding copy. Use <code>&lt;strong&gt;</code> for importance and <code>&lt;em&gt;</code> for <em>stress</em> emphasis.</p>
      <h3>Emphasis in a paragraph</h3>
      <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>
462
      <p><strong>Note:</strong> It's still okay to use <code>&lt;b&gt;</code> and <code>&lt;i&gt;</code> tags in HTML5 and they don't have to be styled bold and italic, respectively (although if there is a more semantic element, use it). <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
463
      <h3>Addresses</h3>
Mark Otto's avatar
Mark Otto committed
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
      <p>The <code>&lt;address&gt;</code> element is used for contact information for its nearest ancestor, or the entire body of work. Here are two examples of how it could be used:</p>

      <div class="row">
        <div class="span4">
          <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>
        </div>
        <div class="span4">
          <address>
            <strong>Full Name</strong><br />
            <a mailto="">first.last@gmail.com</a>
          </address>
        </div>
      </div>

Mark Otto's avatar
Mark Otto committed
483
484
485
486
      <p><strong>Note:</strong> Each line in an <code>&lt;address&gt;</code> must end with a line-break (<code>&lt;br /&gt;</code>) or be wrapped in a block-level tag (e.g., <code>&lt;p&gt;</code>) to properly structure the content.</p>
      <h3>Abbreviations</h3>
      <p>For abbreviations and acronyms, use the <code>&lt;abbr&gt;</code> tag (<code>&lt;acronym&gt;</code> is deprecated in <abbr title="HyperText Markup Langugage 5">HTML5</abbr>). Put the shorthand form within the tag and set a title for the complete name.</p>
    </div>
487
  </div><!-- /row -->
488

Mark Otto's avatar
Mark Otto committed
489
490
  <!-- Blockquotes -->
  <div class="row">
Mark Otto's avatar
Mark Otto committed
491
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
492
493
494
495
496
497
498
      <h2>Blockquotes</h2>
      <p>
        <code>&lt;blockquote&gt;</code>
        <code>&lt;p&gt;</code>
        <code>&lt;small&gt;</code>
      </p>
    </div>
Mark Otto's avatar
Mark Otto committed
499
    <div class="span12">
Jacob Thornton's avatar
Jacob Thornton committed
500
      <h4>How to quote</h4>
Mark Otto's avatar
Mark Otto committed
501
      <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
502
      <blockquote>
Mark Otto's avatar
Mark Otto committed
503
        <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
504
505
506
        <small>Dr. Julius Hibbert</small>
      </blockquote>
    </div>
507
  </div><!-- /row -->
508

Mark Otto's avatar
Mark Otto committed
509
510
  <h2>Lists</h2>
  <div class="row">
Mark Otto's avatar
Mark Otto committed
511
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
512
513
      <h4>Unordered <code>&lt;ul&gt;</code></h4>
      <ul>
Mark Otto's avatar
Mark Otto committed
514
515
516
517
518
        <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
519
          <ul>
Mark Otto's avatar
Mark Otto committed
520
521
522
523
            <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
524
525
          </ul>
        </li>
Mark Otto's avatar
Mark Otto committed
526
527
528
        <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
529
530
      </ul>
    </div>
Mark Otto's avatar
Mark Otto committed
531
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
532
533
      <h4>Unstyled <code>&lt;ul.unstyled&gt;</code></h4>
      <ul class="unstyled">
Mark Otto's avatar
Mark Otto committed
534
535
536
537
538
        <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
539
          <ul>
Mark Otto's avatar
Mark Otto committed
540
541
542
543
            <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
544
545
          </ul>
        </li>
Mark Otto's avatar
Mark Otto committed
546
547
548
        <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
549
550
      </ul>
    </div>
Mark Otto's avatar
Mark Otto committed
551
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
552
553
      <h4>Ordered <code>&lt;ol&gt;</code></h4>
      <ol>
Mark Otto's avatar
Mark Otto committed
554
555
556
557
558
559
560
561
        <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
562
563
      </ol>
    </div>
Mark Otto's avatar
Mark Otto committed
564
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
565
566
567
568
569
570
571
572
573
574
575
      <h4>Description <code>dl</code></h4>
      <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>
576
  </div><!-- /row -->
577
578
579
580
</section>



Mark Otto's avatar
Mark Otto committed
581
582
<!-- Tables
================================================== -->
583
<section id="tables">
Mark Otto's avatar
Mark Otto committed
584
585
  <div class="page-header">
    <h1>Tables <small>For, you guessed it, tabular data</small></h1>
586
  </div>
Mark Otto's avatar
Mark Otto committed
587
588
  <!-- Table structure -->
  <div class="row">
Mark Otto's avatar
Mark Otto committed
589
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
      <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>
Mark Otto's avatar
Mark Otto committed
605
    <div class="span12">
Mark Otto's avatar
Mark Otto committed
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
      <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>
638
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
639
&lt;table&gt;
640
641
  ...
&lt;/table&gt;</pre>
Mark Otto's avatar
Mark Otto committed
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
      <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>
674
      <p><strong>Note:</strong> Zebra-striping is a progressive enhancement not available for older browsers like IE8 and below.</p>
675
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
676
&lt;table class="zebra-striped"&gt;
677
678
...
&lt;/table&gt;</pre>
Mark Otto's avatar
Mark Otto committed
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
704
705
706
707
708
709
710
      <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>
711
<pre class="prettyprint linenums">
Jacob Thornton's avatar
Jacob Thornton committed
712
713
714
715
&lt;script src="js/jquery/jquery.tablesorter.min.js"&gt;&lt;/script&gt;
&lt;script &gt;
  $(function() {
    $("table#sortTableExample").tablesorter({ sortList: [[1,0]] });
716
717
  });
&lt;/script&gt;
Mark Otto's avatar
Mark Otto committed
718
&lt;table class="zebra-striped"&gt;
719
720
  ...
&lt;/table&gt;</pre>
Mark Otto's avatar
Mark Otto committed
721
    </div>
722
  </div><!-- /row -->
723
724
725
726
</section>



Mark Otto's avatar
Mark Otto committed
727
728
<!-- Forms
================================================== -->
729
<section id="forms">
Mark Otto's avatar
Mark Otto committed
730
731
  <div class="page-header">
    <h1>Forms</h1>
732
  </div>
Mark Otto's avatar
Mark Otto committed
733
  <div class="row">
Mark Otto's avatar
Mark Otto committed
734
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
735
736
737
      <h2>Default styles</h2>
      <p>All forms are given default styles to present them in a readable and scalable way. Styles are provided for text inputs, select lists, textareas, radio buttons and checkboxes, and buttons.</p>
    </div>
Mark Otto's avatar
Mark Otto committed
738
    <div class="span12">
Jacob Thornton's avatar
Jacob Thornton committed
739
      <form>
Mark Otto's avatar
Mark Otto committed
740
741
742
        <fieldset>
          <legend>Example form legend</legend>
          <div class="clearfix">
743
            <label for="xlInput">X-Large input</label>
Mark Otto's avatar
Mark Otto committed
744
745
746
            <div class="input">
              <input class="xlarge" id="xlInput" name="xlInput" size="30" type="text" />
            </div>
747
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
748
          <div class="clearfix">
749
            <label for="normalSelect">Select</label>
Mark Otto's avatar
Mark Otto committed
750
            <div class="input">
751
              <select name="normalSelect" id="normalSelect">
Mark Otto's avatar
Mark Otto committed
752
753
754
755
756
757
758
                <option>1</option>
                <option>2</option>
                <option>3</option>
                <option>4</option>
                <option>5</option>
              </select>
            </div>
759
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
760
          <div class="clearfix">
761
            <label for="mediumSelect">Select</label>
Mark Otto's avatar
Mark Otto committed
762
            <div class="input">
763
              <select class="medium" name="mediumSelect" id="mediumSelect">
Mark Otto's avatar
Mark Otto committed
764
765
766
767
768
769
770
                <option>1</option>
                <option>2</option>
                <option>3</option>
                <option>4</option>
                <option>5</option>
              </select>
            </div>
771
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
772
          <div class="clearfix">
773
            <label>Uneditable input</label>
Mark Otto's avatar
Mark Otto committed
774
            <div class="input">
775
              <span class="uneditable-input">Some value here</span>
Mark Otto's avatar
Mark Otto committed
776
            </div>
777
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
778
          <div class="clearfix">
779
            <label for="disabledInput">Disabled input</label>
Mark Otto's avatar
Mark Otto committed
780
781
782
            <div class="input">
              <input class="xlarge disabled" id="disabledInput" name="disabledInput" size="30" type="text" placeholder="Disabled input here… carry on." disabled />
            </div>
783
          </div><!-- /clearfix -->
784
785
786
787
788
789
          <div class="clearfix">
            <label for="disabledInput">Disabled textarea</label>
            <div class="input">
              <textarea class="xxlarge" name="textarea" id="textarea" rows="3" disabled></textarea>
            </div>
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
790
          <div class="clearfix error">
791
            <label for="xlInput2">X-Large input</label>
Mark Otto's avatar
Mark Otto committed
792
            <div class="input">
793
              <input class="xlarge error" id="xlInput2" name="xlInput2" size="30" type="text" />
Mark Otto's avatar
Mark Otto committed
794
795
              <span class="help-inline">Small snippet of help text</span>
            </div>
796
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
797
798
799
800
        </fieldset>
        <fieldset>
          <legend>Example form legend</legend>
          <div class="clearfix">
801
            <label for="prependedInput">Prepended text</label>
Mark Otto's avatar
Mark Otto committed
802
803
804
805
806
807
            <div class="input">
              <div class="input-prepend">
                <span class="add-on">@</span>
                <input class="medium" id="prependedInput" name="prependedInput" size="16" type="text" />
              </div>
            </div>
808
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
809
          <div class="clearfix">
810
            <label for="prependedInput2">Prepended checkbox</label>
Mark Otto's avatar
Mark Otto committed
811
812
813
814
815
816
            <div class="input">
              <div class="input-prepend">
                <label class="add-on"><input type="checkbox" name="" id="" value="" /></label>
                <input class="mini" id="prependedInput2" name="prependedInput2" size="16" type="text" />
              </div>
            </div>
817
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
818
          <div class="clearfix">
819
            <label for="appendedInput">Appended checkbox</label>
Mark Otto's avatar
Mark Otto committed
820
821
822
823
824
825
            <div class="input">
              <div class="input-append">
                <input class="mini" id="appendedInput" name="appendedInput" size="16" type="text" />
                <label class="add-on active"><input type="checkbox" name="" id="" value="" checked="checked" /></label>
              </div>
            </div>
826
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
827
          <div class="clearfix">
828
            <label for="fileInput">File input</label>
Mark Otto's avatar
Mark Otto committed
829
830
831
            <div class="input">
              <input class="input-file" id="fileInput" name="fileInput" type="file" />
            </div>
832
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
833
834
835
836
        </fieldset>
        <fieldset>
          <legend>Example form legend</legend>
          <div class="clearfix">
837
            <label id="optionsCheckboxes">List of options</label>
Mark Otto's avatar
Mark Otto committed
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
            <div class="input">
              <ul class="inputs-list">
                <li>
                  <label>
                    <input type="checkbox" name="optionsCheckboxes" value="option1" />
                    <span>Option one is this and that&mdash;be sure to include why it’s great</span>
                  </label>
                </li>
                <li>
                  <label>
                    <input type="checkbox" name="optionsCheckboxes" value="option2" />
                    <span>Option two can also be checked and included in form results</span>
                  </label>
                </li>
                <li>
                  <label>
                    <input type="checkbox" name="optionsCheckboxes" value="option2" />
                    <span>Option three can&mdash;yes, you guessed it&mdash;also be checked and included in form results</span>
                  </label>
                </li>
                <li>
                  <label class="disabled">
                    <input type="checkbox" name="optionsCheckboxes" value="option2" disabled />
                    <span>Option four cannot be checked as it is disabled.</span>
                  </label>
                </li>
              </ul>
              <span class="help-block">
                <strong>Note:</strong> Labels surround all the options for much larger click areas and a more usable form.
              </span>
            </div>
869
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
870
          <div class="clearfix">
871
            <label>Date range</label>
Mark Otto's avatar
Mark Otto committed
872
873
874
875
876
877
878
879
880
881
            <div class="input">
              <div class="inline-inputs">
                <input class="small" type="text" value="May 1, 2011" />
                <input class="mini" type="text" value="12:00am" />
                to
                <input class="small" type="text" value="May 8, 2011" />
                <input class="mini" type="text" value="11:59pm" />
                <span class="help-inline">All times are shown as Pacific Standard Time (GMT -08:00).</span>
              </div>
            </div>
882
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
883
884
885
          <div class="clearfix">
            <label for="textarea">Textarea</label>
            <div class="input">
886
              <textarea class="xxlarge" id="textarea2" name="textarea2" rows="3"></textarea>
Mark Otto's avatar
Mark Otto committed
887
888
889
890
              <span class="help-block">
                Block of help text to describe the field above if need be.
              </span>
            </div>
891
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
892
          <div class="clearfix">
893
            <label id="optionsRadio">List of options</label>
Mark Otto's avatar
Mark Otto committed
894
895
896
897
            <div class="input">
              <ul class="inputs-list">
                <li>
                  <label>
898
                    <input type="radio" checked name="optionsRadios" value="option1" />
Mark Otto's avatar
Mark Otto committed
899
900
901
902
903
                    <span>Option one is this and that&mdash;be sure to include why it’s great</span>
                  </label>
                </li>
                <li>
                  <label>
904
905
                    <input type="radio" name="optionsRadios" value="option2" />
                    <span>Option two can is something else and selecting it will deselect options 1</span>
Mark Otto's avatar
Mark Otto committed
906
907
908
909
                  </label>
                </li>
              </ul>
            </div>
910
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
911
          <div class="actions">
912
            <input type="submit" class="btn primary" value="Save changes">&nbsp;<button type="reset" class="btn">Cancel</button>
913
          </div>
Mark Otto's avatar
Mark Otto committed
914
        </fieldset>
Jacob Thornton's avatar
Jacob Thornton committed
915
      </form>
916
    </div>
917
  </div><!-- /row -->
918

Mark Otto's avatar
Mark Otto committed
919
  <br />
920

Mark Otto's avatar
Mark Otto committed
921
  <div class="row">
Mark Otto's avatar
Mark Otto committed
922
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
923
924
      <h2>Stacked forms</h2>
      <p>Add <code>.form-stacked</code> to your form’s HTML and you’ll have labels on top of their fields instead of to their left. This works great if your forms are short or you have two columns of inputs for heavier forms.</p>
925
    </div>
Mark Otto's avatar
Mark Otto committed
926
    <div class="span12">
Mark Otto's avatar
Mark Otto committed
927
928
929
930
      <form action="" class="form-stacked">
        <fieldset>
          <legend>Example form legend</legend>
          <div class="clearfix">
931
            <label for="xlInput3">X-Large input</label>
Mark Otto's avatar
Mark Otto committed
932
            <div class="input">
933
              <input class="xlarge" id="xlInput3" name="xlInput3" size="30" type="text" />
Mark Otto's avatar
Mark Otto committed
934
            </div>
935
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
936
          <div class="clearfix">
937
            <label for="stackedSelect">Select</label>
Mark Otto's avatar
Mark Otto committed
938
            <div class="input">
939
              <select name="stackedSelect" id="stackedSelect">
Mark Otto's avatar
Mark Otto committed
940
941
942
943
944
945
946
                <option>1</option>
                <option>2</option>
                <option>3</option>
                <option>4</option>
                <option>5</option>
              </select>
            </div>
947
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
948
949
950
        </fieldset>
        <fieldset>
          <legend>Example form legend</legend>
951
          <div class="clearfix error">
952
            <label for="xlInput4">X-Large input</label>
953
            <div class="input">
954
              <input class="xlarge error" id="xlInput4" name="xlInput4" size="30" type="text" />
955
956
              <span class="help-inline">Small snippet of help text</span>
            </div>
957
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
958
          <div class="clearfix">
959
            <label id="optionsCheckboxes">List of options</label>
Mark Otto's avatar
Mark Otto committed
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
            <div class="input">
              <ul class="inputs-list">
                <li>
                  <label>
                    <input type="checkbox" name="optionsCheckboxes" value="option1" />
                    <span>Option one is this and that&mdash;be sure to include why it’s great</span>
                  </label>
                </li>
                <li>
                  <label>
                    <input type="checkbox" name="optionsCheckboxes" value="option2" />
                    <span>Option two can also be checked and included in form results</span>
                  </label>
                </li>
              </ul>
              <span class="help-block">
                <strong>Note:</strong> Labels surround all the options for much larger click areas and a more usable form.
              </span>
            </div>
979
          </div><!-- /clearfix -->
Mark Otto's avatar
Mark Otto committed
980
981
        </fieldset>
        <div class="actions">
982
          <button type="submit" class="btn primary">Save changes</button>&nbsp;<button type="reset" class="btn">Cancel</button>
Mark Otto's avatar
Mark Otto committed
983
984
        </div>
      </form>
985
    </div>
986
  </div><!-- /row -->
Mark Otto's avatar
Mark Otto committed
987
988

  <div class="row">
Mark Otto's avatar
Mark Otto committed
989
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
990
991
      <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>
992
      <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. Plus, rolling your own styles is easy peasy.</p>
993
    </div>
Mark Otto's avatar
Mark Otto committed
994
    <div class="span12">
Mark Otto's avatar
Mark Otto committed
995
996
997
      <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;">
Jacob Thornton's avatar
Jacob Thornton committed
998
        <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>
Mark Otto's avatar
Mark Otto committed
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
      </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">
1019
        <button class="btn large primary disabled" disabled="disabled">Primary action</button>&nbsp;<button class="btn large" disabled>Action</button>
Mark Otto's avatar
Mark Otto committed
1020
      </div>
1021
    </div>
1022
  </div><!-- /row -->
1023
1024
1025
1026
</section>



Mark Otto's avatar
Mark Otto committed
1027
1028
<!-- Navigation
================================================== -->
1029
<section id="navigation">
Mark Otto's avatar
Mark Otto committed
1030
1031
1032
1033
  <div class="page-header">
    <h1>Navigation</h1>
  </div>
  <h2>Fixed topbar</h2>
1034
  <div class="topbar-wrapper" style="z-index: 5;">
Mark Otto's avatar
Mark Otto committed
1035
    <div class="topbar">
1036
      <div class="topbar-inner">
1037
        <div class="container">
Jacob Thornton's avatar
Jacob Thornton committed
1038
          <h3><a href="#">Project Name</a></h3>
1039
          <ul class="nav">
Jacob Thornton's avatar
Jacob Thornton committed
1040
1041
1042
1043
            <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>
Mark Otto's avatar
Mark Otto committed
1044
            <li class="dropdown">
1045
1046
              <a href="#" class="dropdown-toggle">Dropdown</a>
              <ul class="dropdown-menu">
1047
                <li><a href="#">Secondary link</a></li>
1048
1049
1050
1051
1052
                <li><a href="#">Something else here</a></li>
                <li class="divider"></li>
                <li><a href="#">Another link</a></li>
              </ul>
            </li>
Jacob Thornton's avatar
Jacob Thornton committed
1053
          </ul>
Mark Otto's avatar
Mark Otto committed
1054
          <form class="pull-left" action="">
Jacob Thornton's avatar
Jacob Thornton committed
1055
1056
1057
            <input type="text" placeholder="Search" />
          </form>
          <ul class="nav secondary-nav">
1058
1059
1060
            <li class="dropdown">
              <a href="#" class="dropdown-toggle">Dropdown</a>
              <ul class="dropdown-menu">
Jacob Thornton's avatar
Jacob Thornton committed
1061
1062
1063
1064
1065
1066
1067
1068
                <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>
1069
      </div><!-- /topbar-inner -->
1070
1071
    </div><!-- /topbar -->
  </div><!-- /topbar-wrapper -->
1072

Mark Otto's avatar
Mark Otto committed
1073
  <div class="row">
Mark Otto's avatar
Mark Otto committed
1074
    <div class="span5">
1075
      <h4>What is it</h4>
1076
      <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
1077
    </div>
Mark Otto's avatar
Mark Otto committed
1078
    <div class="span5">
1079
1080
1081
      <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>
Mark Otto's avatar
Mark Otto committed
1082
    <div class="span6">
1083
      <h4>Dropdowns included</h4>
1084
      <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>li</code> tags also support <code>.active</code> for showing current page selection.</p>
Mark Otto's avatar
Mark Otto committed
1085
1086
    </div>
  </div>
1087
  <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>body</code>.</p>
Mark Otto's avatar
Mark Otto committed
1088
1089

  <br />
1090

1091
  <div class="row">
Mark Otto's avatar
Mark Otto committed
1092
    <div class="span4">
1093
1094
1095
1096
      <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>
Mark Otto's avatar
Mark Otto committed
1097
    <div class="span12">
1098
1099
1100
1101
1102
1103
      <ul class="tabs">
        <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>
1104
1105
1106
1107
1108
1109
1110
1111
1112
        <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>
1113
      </ul>
1114
<pre class="prettyprint linenums">
1115
&lt;ul class="tabs"&gt;
Mark Otto's avatar
Mark Otto committed
1116
1117
1118
1119
1120
  &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;
1121
1122
&lt;/ul&gt;
</pre>
1123
1124
1125
1126
1127
1128
1129
      <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>
1130
<pre class="prettyprint linenums">
1131
&lt;ul class="pills"&gt;
Mark Otto's avatar
Mark Otto committed
1132
1133
1134
1135
1136
  &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;
1137
1138
1139
&lt;/ul&gt;
</pre>
    </div>
1140
  </div><!-- /row -->
1141

Mark Otto's avatar
Mark Otto committed
1142
1143
1144
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
  <!-- Breadcrumbs -->
  <div class="row">
    <div class="span4">
      <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>
    <div class="span12">
      <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>
    </div>
  </div>

1170
1171
  <!-- Pagination -->
  <div class="row">
Mark Otto's avatar
Mark Otto committed
1172
    <div class="span4">
1173
1174
      <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>
1175
    </div>
Mark Otto's avatar
Mark Otto committed
1176
    <div class="span12">
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
      <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>
          <li class="next"><a href="#">Next &rarr;</a></li>
        </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>
          <li class="next"><a href="#">Next &rarr;</a></li>
        </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>
          <li class="next"><a href="#">Next &rarr;</a></li>
        </ul>
      </div>
1218
<pre class="prettyprint linenums">
1219
1220
&lt;div class="pagination"&gt;
  &lt;ul&gt;
Mark Otto's avatar
Mark Otto committed
1221
1222
1223
1224
1225
1226
1227
    &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>
1228
1229
1230
  &lt;/ul&gt;
&lt;/div&gt;
</pre>
1231
    </div>
1232
  </div><!-- /row -->
1233
1234
1235
1236
1237

</section>



Mark Otto's avatar
Mark Otto committed
1238
1239
<!-- Alerts & Messages
================================================== -->
1240
1241
<section id="alerts">
  <div class="page-header">
1242
1243
    <h1>Alerts &amp; Errors <small>Styles for success, warning, and error messages or alerts</small></h1>
  </div>
1244
  <!-- Basic alert messages -->
1245
  <div class="row">
Mark Otto's avatar
Mark Otto committed
1246
    <div class="span4">
1247
      <h2>Basic alerts</h2>
1248
      <p><code>div.alert-message</code></p>
1249
1250
      <p>One-line messages for highlighting the failure, possible failure, or success of an action. Particularly useful for forms.</p>
    </div>
Mark Otto's avatar
Mark Otto committed
1251
    <div class="span12">
1252
1253
      <div class="alert-message warning">
        <a class="close" href="#">&times;</a>
1254
        <p><strong>Holy guacamole!</strong> Best check yo self, you’re not looking too good.</p>
1255
      </div>
1256
      <div class="alert-message error">
1257
        <a class="close" href="#">&times;</a>
1258
        <p><strong>Oh snap!</strong> Change this and that and try again.</p>
1259
1260
1261
1262
1263
1264
1265
      </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>
1266
        <p><strong>Heads up!</strong> This is an alert that needs your attention, but it’s not a huge priority just yet.</p>
1267
1268
      </div>
    </div>
1269
  </div><!-- /row -->
1270
  <!-- Block messages -->
1271
  <div class="row">
Mark Otto's avatar
Mark Otto committed
1272
    <div class="span4">
1273
      <h2>Block messages</h2>
1274
      <p><code>div.alert-message.block-message</code></p>
1275
1276
      <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>
    </div>
Mark Otto's avatar
Mark Otto committed
1277
    <div class="span12">
1278
1279
      <div class="alert-message block-message warning">
        <a class="close" href="#">&times;</a>
1280
        <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>
1281
1282
1283
        <div class="alert-actions">
          <a class="btn small" href="#">Take this action</a> <a class="btn small" href="#">Or do this</a>
        </div>
1284
      </div>
1285
      <div class="alert-message block-message error">
1286
        <a class="close" href="#">&times;</a>
1287
1288
1289
1290
1291
1292
        <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>
1293
1294
1295
        <div class="alert-actions">
          <a class="btn small" href="#">Take this action</a> <a class="btn small" href="#">Or do this</a>
        </div>
1296
1297
1298
1299
      </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>
1300
1301
1302
        <div class="alert-actions">
          <a class="btn small" href="#">Take this action</a> <a class="btn small" href="#">Or do this</a>
        </div>
1303
1304
1305
      </div>
      <div class="alert-message block-message info">
        <a class="close" href="#">&times;</a>
1306
        <p><strong>Heads up!</strong> This is an alert that needs your attention, but it’s not a huge priority just yet.</p>
1307
1308
1309
        <div class="alert-actions">
          <a class="btn small" href="#">Take this action</a> <a class="btn small" href="#">Or do this</a>
        </div>
1310
1311
      </div>
    </div>
1312
  </div><!-- /row -->
1313
1314
1315
</section>


Mark Otto's avatar
Mark Otto committed
1316
1317
<!-- Popovers
================================================== -->
Mark Otto's avatar
Mark Otto committed
1318
<section id="popovers">
Jacob Thornton's avatar
Jacob Thornton committed
1319
  <div class="page-header">
Mark Otto's avatar
Mark Otto committed
1320
    <h1>Popovers <small>Components for displaying content in modals, tooltips, and popovers</small></h1>
Jacob Thornton's avatar
Jacob Thornton committed
1321
1322
  </div>
  <div class="row">
Mark Otto's avatar
Mark Otto committed
1323
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
1324
      <h2>Modals</h2>
1325
      <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>
Jacob Thornton's avatar
Jacob Thornton committed
1326
    </div>
Mark Otto's avatar
Mark Otto committed
1327
    <div class="span12">
Jacob Thornton's avatar
Jacob Thornton committed
1328
      <div class="well" style="background-color: #888; border: none; padding: 40px;">
1329
        <!-- Modal -->
1330
        <div class="modal" style="position: relative; top: auto; left: auto; margin: 0 auto; z-index: 1">
Jacob Thornton's avatar
Jacob Thornton committed
1331
1332
          <div class="modal-header">
            <a href="#" class="close">&times;</a>
1333
            <h3>Modal Heading</h3>
Jacob Thornton's avatar
Jacob Thornton committed
1334
1335
          </div>
          <div class="modal-body">
1336
            <p>One fine body…</p>
Jacob Thornton's avatar
Jacob Thornton committed
1337
1338
          </div>
          <div class="modal-footer">
Mark Otto's avatar
Mark Otto committed
1339
            <a href="#" class="btn secondary">Secondary</a>
Mark Otto's avatar
Mark Otto committed
1340
            <a href="#" class="btn primary">Primary</a>
Jacob Thornton's avatar
Jacob Thornton committed
1341
1342
1343
          </div>
        </div>
      </div>
1344
    </div>
1345
  </div><!-- /row -->
1346

1347
  <!-- Tooltips -->
1348
  <div class="row">
Mark Otto's avatar
Mark Otto committed
1349
    <div class="span4">
1350
1351
1352
      <h2>Tool Tips</h2>
      <p>Twipsies are super useful for aiding a confused user and pointing them in the right direction.</p>
    </div>
Mark Otto's avatar
Mark Otto committed
1353
    <div class="span12">
1354
1355
1356
      <div class="twipsies well">
        <div style="position: relative">
          <p class="muted" style="margin-bottom: 0">
Jacob Thornton's avatar
Jacob Thornton committed
1357
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.
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
          </p>
          <div class="twipsy below">
            <div class="twipsy-arrow"></div>
            <div class="twipsy-inner">below!</div>
          </div>
          <div class="twipsy right">
            <div class="twipsy-arrow"></div>
            <div class="twipsy-inner">right!</div>
          </div>
          <div class="twipsy left">
            <div class="twipsy-arrow"></div>
            <div class="twipsy-inner">left!</div>
          </div>
          <div class="twipsy above">
            <div class="twipsy-arrow"></div>
            <div class="twipsy-inner">above!</div>
Jacob Thornton's avatar
Jacob Thornton committed
1374
1375
1376
1377
          </div>
        </div>
      </div>
    </div>
1378
  </div><!-- /row -->
Jacob Thornton's avatar
Jacob Thornton committed
1379

1380
  <!-- Popovers -->
Mark Otto's avatar
Mark Otto committed
1381
  <div class="row">
Mark Otto's avatar
Mark Otto committed
1382
    <div class="span4">
Mark Otto's avatar
Mark Otto committed
1383
      <h2>Popovers</h2>
Mark Otto's avatar
Mark Otto committed
1384
      <p>Use popovers to provide subtextual information to a page without affecting layout.</p>
Mark Otto's avatar
Mark Otto committed
1385
    </div>
Mark Otto's avatar
Mark Otto committed
1386
    <div class="span12">
Mark Otto's avatar
Mark Otto committed
1387
      <div class="well popover-well">
Jacob Thornton's avatar
Jacob Thornton committed
1388
1389
         <div class="popover-wrapper">
          <div class="popover left">
Mark Otto's avatar
Mark Otto committed
1390
1391
            <div class="arrow"></div>
            <div class="inner">
Jacob Thornton's avatar
Jacob Thornton committed
1392
              <h3 class="title">Popover Title</h3>
Mark Otto's avatar
Mark Otto committed
1393
1394
1395
1396
1397
              <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>
1398
          <img class="large-bird" src="assets/img/bird.png" width="220px" height="145px">
Mark Otto's avatar
Mark Otto committed
1399
1400
1401
        </div>
      </div>
    </div>
1402
  </div><!-- /row -->
Jacob Thornton's avatar
Jacob Thornton committed
1403
</section>
1404

Mark Otto's avatar
Mark Otto committed
1405

1406
1407
1408
1409
1410
1411
1412
1413
<!-- Using Javascript w/ Bootstrap
 ================================================== -->

 <section id="javascript">
   <div class="page-header">
     <h1>Using Javascript with Bootstrap <small>An index of plugins to get you started</small></h1>
   </div>
   <div class="row">
Mark Otto's avatar
Mark Otto committed
1414
     <div class="span4">
1415
1416
       <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>
     </div>
Mark Otto's avatar
Mark Otto committed
1417
     <div class="span12">
1418
1419
1420
       <h2>Getting started</h2>
       <p>We've set out to make your interactive work with Bootstrap even more simple, offering several lightweight plugins for things like modals, tooltips, and other dynamic components. These plugins have been coded up to work with either <a href="http://jquery.com/" target="_blank">jQuery</a> or <a href="http://ender.no.de" target="_blank">Ender</a>, but we encourage you to extend and modify them to fit your development needs!</p>
       <h2>Do I need javascript?</h2>
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
       <p>The short answer is <strong>no</strong>... of course not! However, for those who need it, we've provided the plugins below to help you understand how to integrate bootstrap with javascript and to give you a quick lightweight option for dropping something in and getting the basic functionality right away! For more information on these plugins and to see demos of them in action, please refer to our <a href="./javascript.html">plugin documentation page</a>.</p>
       <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>
             <td>This plugin is for adding dropdown to the bootstrap nav.</td>
           </tr>
1442
1443
1444
1445
           <tr>
             <td><a href="./javascript.html#tabs">bootstrap-tabs.js</a></td>
             <td>This plugin adds quick, dynamic tab and pill functionality.</td>
           </tr>
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
           <tr>
             <td><a href="./javascript.html#twipsy">bootstrap-twipsy.js</a></td>
             <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 title storage!</td>
           </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>
1456
1457
1458
     </div>
   </div>

Mark Otto's avatar
Mark Otto committed
1459

Mark Otto's avatar
Mark Otto committed
1460
1461
<!-- Using Bootstrap w/ Less
================================================== -->
1462
<section id="less">
Mark Otto's avatar
Mark Otto committed
1463
<div class="page-header">
1464
  <h1>Using Bootstrap with Less <small>Supercharge your CSS with variables, mixins, and functions</small></h1>
Mark Otto's avatar
Mark Otto committed
1465
1466
</div>
<div class="row">
Mark Otto's avatar
Mark Otto committed
1467
  <div class="span4">
1468
1469
    <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
1470
  </div>
Mark Otto's avatar
Mark Otto committed
1471
  <div class="span12">
Mark Otto's avatar
Mark Otto committed
1472
    <h2>How to use it</h2>
1473
    <p>Use this option to make full use of Bootstrap’s Less variables, mixins, and nesting in CSS via javascript in your browser.</p>
1474
<pre class="prettyprint linenums">
Jacob Thornton's avatar
Jacob Thornton committed
1475
&lt;link rel="stylesheet/less" href="less/bootstrap.less" media="all" /&gt;
Mark Otto's avatar
Mark Otto committed
1476
&lt;script src="js/less-1.1.3.min.js"&gt;&lt;/script&gt;</pre>
1477
<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
1478

1479
1480
    <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>
1481
    <h3>Variables</h3>
1482
    <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>
1483
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
// 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;

1505
1506
1507
// Baseline grid
@basefont:          13px;
@baseline:          18px;
Mark Otto's avatar
Mark Otto committed
1508
1509
1510
</pre>

<h3>Commenting</h3>
1511
<p>Less also provides another style of commenting in addition to CSS’s normal <code>/* ... */</code> syntax.</p>
1512
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
1513
1514
1515
1516
1517
// This is a comment
/* This is also a comment */
</pre>

<h3>Mixins up the wazoo</h3>
1518
<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
1519
<h4>Font stacks</h4>
1520
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
#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;
  }
  .serif(@weight: normal, @size: 14px, @lineHeight: 20px) {
    font-family: "Georgia", Times New Roman, Times, sans-serif;
    font-size: @size;
    font-weight: @weight;
    line-height: @lineHeight;
  }
  .monospace(@weight: normal, @size: 12px, @lineHeight: 20px) {
    font-family: "Monaco", Courier New, monospace;
    font-size: @size;
    font-weight: @weight;
    line-height: @lineHeight;
  }
}
</pre>
<h4>Gradients</h4>
1548
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
#gradient {
  .horizontal (@startColor: #555, @endColor: #333) {
    background-color: @endColor;
    background-repeat: repeat-x;
    background-image: -khtml-gradient(linear, left top, right top, from(@startColor), to(@endColor)); // Konqueror
    background-image: -moz-linear-gradient(left, @startColor, @endColor); // FF 3.6+
    background-image: -ms-linear-gradient(left, @startColor, @endColor); // IE10
    background-image: -webkit-gradient(linear, left top, right top, color-stop(0%, @startColor), color-stop(100%, @endColor)); // Safari 4+, Chrome 2+
    background-image: -webkit-linear-gradient(left, @startColor, @endColor); // Safari 5.1+, Chrome 10+
    background-image: -o-linear-gradient(left, @startColor, @endColor); // Opera 11.10
    background-image: linear-gradient(left, @startColor, @endColor); // Le standard
  }
  .vertical (@startColor: #555, @endColor: #333) {
    background-color: @endColor;
    background-repeat: repeat-x;
1564
1565
1566
1567
1568
1569
1570
    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
1571
1572
1573
1574
  }
  .directional (@startColor: #555, @endColor: #333, @deg: 45deg) {
    ...
  }
1575
  .vertical-three-colors(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
Mark Otto's avatar
Mark Otto committed
1576
1577
1578
1579
1580
1581
    ...
  }
}
</pre>

<h3>Operations and grid system</h3>
1582
<p>Get fancy and perform some math to generate flexible and powerful mixins like the one below.</p>
1583
<pre class="prettyprint linenums">
Mark Otto's avatar
Mark Otto committed
1584
1585
1586
1587
// Griditude
@gridColumns:       16;
@gridColumnWidth:   40px;
@gridGutterWidth:   20px;
1588
@siteWidth:         (@gridColumns * @gridColumnWidth) + (@gridGutterWidth * (@gridColumns - 1));
Mark Otto's avatar
Mark Otto committed
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599

// Grid System
.container {
  width: @siteWidth;
  margin: 0 auto;
  .clearfix();
}
.columns(@columnSpan: 1) {
  width: (@gridColumnWidth * @columnSpan) + (@gridGutterWidth * (@columnSpan - 1));
}
.offset(@columnOffset: 1) {
1600
  margin-left: (@gridColumnWidth * @columnOffset) + (@gridGutterWidth * (@columnOffset - 1)) + @extraSpace;
Mark Otto's avatar
Mark Otto committed
1601
1602
1603
1604
1605
1606
1607
}
</pre>
  </div>
</div>

</section>

1608
    </div><!-- /container -->
1609
1610
1611
1612

    <div id="footer">
      <div class="inner">
        <div class="container">
1613
          <p class="right"><a href="#">Back to top</a></p>
1614
          <p>
1615
            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 />
Mark Otto's avatar
Mark Otto committed
1616
            Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License v2.0</a>.
1617
          </p>
1618
1619
        </div>
      </div>
1620
1621
1622
    </div>

  </body>
1623
</html>