css.html 129 KB
Newer Older
Mark Otto's avatar
Mark Otto committed
1
2
3
4
---
layout: default
title: CSS
slug: css
Mark Otto's avatar
Mark Otto committed
5
lead: "Global CSS settings, fundamental HTML elements styled and enhanced with extensible classes, and an advanced grid system."
Mark Otto's avatar
Mark Otto committed
6
7
8
---


Mark Otto's avatar
Mark Otto committed
9
10
11
12
13
14
<!-- Global Bootstrap settings
================================================== -->
<div class="bs-docs-section">
  <h1 id="overview" class="page-header">Overview</h1>

  <p class="lead">Get the lowdown on the key pieces of Bootstrap's infrastructure, including our approach to better, faster, stronger web development.</p>
Mark Otto's avatar
Mark Otto committed
15

Mark Otto's avatar
Mark Otto committed
16
17
  <h3 id="overview-doctype">HTML5 doctype</h3>
  <p>Bootstrap makes use of certain HTML elements and CSS properties that require the use of the HTML5 doctype. Include it at the beginning of all your projects.</p>
Mark Otto's avatar
Mark Otto committed
18
19
20
21
22
23
24
{% highlight html %}
<!DOCTYPE html>
<html lang="en">
  ...
</html>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
25
26
27
  <h3 id="overview-mobile">Mobile first</h3>
  <p>With Bootstrap 2, we added optional mobile friendly styles for key aspects of the framework. With Bootstrap 3, we've rewritten the project to be mobile friendly from the start. Instead of adding on optional mobile styles, they're baked right into the core. In fact, <strong>Bootstrap is mobile first</strong>. Mobile first styles can be found throughout the entire library instead of in separate files.</p>
  <p>To ensure proper rendering and touch zooming, <strong>add the viewport meta tag</strong> to your <code>&lt;head&gt;</code>.</p>
28
{% highlight html %}
29
<meta name="viewport" content="width=device-width, initial-scale=1">
30
{% endhighlight %}
31
  <p>You can disable zooming capabilities on mobile devices by adding <code>user-scalable=no</code> to the viewport meta tag. This disables zooming, meaning users are only able to scroll, and results in your site feeling a bit more like a native application. Overall, we don't recommend this on every site, so use caution!</p>
32
{% highlight html %}
33
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
Mark Otto's avatar
Mark Otto committed
34
35
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
36
37
38
39
40
41
42
43
  <h3 id="overview-type-links">Typography and links</h3>
  <p>Bootstrap sets basic global display, typography, and link styles. Specifically, we:</p>
  <ul>
    <li>Set <code>background-color: #fff;</code> on the <code>body</code></li>
    <li>Use the <code>@font-family-base</code>, <code>@font-size-base</code>, and <code>@line-height-base</code> attributes as our typographic base</li>
    <li>Set the global link color via <code>@link-color</code> and apply link underlines only on <code>:hover</code></li>
  </ul>
  <p>These styles can be found within <code>scaffolding.less</code>.</p>
Mark Otto's avatar
Mark Otto committed
44

45
46
  <h3 id="overview-normalize">Normalize.css</h3>
  <p>For improved cross-browser rendering, we use <a href="http://necolas.github.io/normalize.css/" target="_blank">Normalize.css</a>, a project by <a href="http://twitter.com/necolas" target="_blank">Nicolas Gallagher</a> and <a href="http://twitter.com/jon_neal" target="_blank">Jonathan Neal</a>.</p>
47

Mark Otto's avatar
Mark Otto committed
48
  <h3 id="overview-container">Containers</h3>
49
50
  <p>Bootstrap requires a containing element to wrap site contents and house our grid system. You may choose one of two containers to use in your projects. Note that, due to <code>padding</code> and more, neither container is nestable.</p>
  <p>Use <code>.container</code> for a responsive fixed width container.</p>
51
52
53
54
55
{% highlight html %}
<div class="container">
  ...
</div>
{% endhighlight %}
56
57
58
59
60
  <p>Use <code>.container-fluid</code> for a full width container, spanning the entire width of your viewport.</p>
{% highlight html %}
<div class="container-fluid">
  ...
</div>
61
{% endhighlight %}
Mark Otto's avatar
Mark Otto committed
62
</div>
Mark Otto's avatar
Mark Otto committed
63
64
65



Mark Otto's avatar
Mark Otto committed
66
67
68
69
<!-- Grid system
================================================== -->
<div class="bs-docs-section">
  <h1 id="grid" class="page-header">Grid system</h1>
Mark Otto's avatar
Mark Otto committed
70

Mark Otto's avatar
Mark Otto committed
71
  <p class="lead">Bootstrap includes a responsive, mobile first fluid grid system that appropriately scales up to 12 columns as the device or viewport size increases. It includes <a href="#grid-example-basic">predefined classes</a> for easy layout options, as well as powerful <a href="#grid-less">mixins for generating more semantic layouts</a>.</p>
Mark Otto's avatar
Mark Otto committed
72

Mark Otto's avatar
Mark Otto committed
73
74
75
76
77
78
79
80
81
  <h3 id="grid-intro">Introduction</h3>
  <p>Grid systems are used for creating page layouts through a series of rows and columns that house your content. Here's how the Bootstrap grid system works:</p>
  <ul>
    <li>Rows must be placed within a <code>.container</code> (fixed-width) or <code>.container-fluid</code> (full-width) for proper alignment and padding.</li>
    <li>Use rows to create horizontal groups of columns.</li>
    <li>Content should be placed within columns, and only columns may be immediate children of rows.</li>
    <li>Predefined grid classes like <code>.row</code> and <code>.col-xs-4</code> are available for quickly making grid layouts. Less mixins can also be used for more semantic layouts.</li>
    <li>Columns create gutters (gaps between column content) via <code>padding</code>. That padding is offset in rows for the first and last column via negative margin on <code>.row</code>s.</li>
    <li>Grid columns are created by specifying the number of twelve available columns you wish to span. For example, three equal columns would use three <code>.col-xs-4</code>.</li>
82
    <li>Grid classes apply to devices with screen widths greater than or equal to the breakpoint sizes, and override grid classes targeted at smaller devices. Therefore, applying any <code>.col-md-</code> class to an element will not only affect its styling on medium devices but also on large devices if a <code>.col-lg-</code> class is not present.</li>
Mark Otto's avatar
Mark Otto committed
83
84
  </ul>
  <p>Look to the examples for applying these principles to your code.</p>
85

Mark Otto's avatar
Mark Otto committed
86
87
  <h3 id="grid-media-queries">Media queries</h3>
  <p>We use the following media queries in our Less files to create the key breakpoints in our grid system.</p>
88
{% highlight scss %}
Chris Rebert's avatar
Chris Rebert committed
89
/* Extra small devices (phones, less than 768px) */
90
91
92
/* No media query since this is the default in Bootstrap */

/* Small devices (tablets, 768px and up) */
93
@media (min-width: @screen-sm-min) { ... }
94

95
/* Medium devices (desktops, 992px and up) */
96
@media (min-width: @screen-md-min) { ... }
97
98

/* Large devices (large desktops, 1200px and up) */
99
@media (min-width: @screen-lg-min) { ... }
100
{% endhighlight %}
Mark Otto's avatar
Mark Otto committed
101
  <p>We occasionally expand on these media queries to include a <code>max-width</code> to limit CSS to a narrower set of devices.</p>
102
{% highlight scss %}
103
104
105
106
@media (max-width: @screen-xs-max) { ... }
@media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { ... }
@media (min-width: @screen-md-min) and (max-width: @screen-md-max) { ... }
@media (min-width: @screen-lg-min) { ... }
107
108
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
  <h3 id="grid-options">Grid options</h3>
  <p>See how aspects of the Bootstrap grid system work across multiple devices with a handy table.</p>
  <div class="table-responsive">
    <table class="table table-bordered table-striped">
      <thead>
        <tr>
          <th></th>
          <th>
            Extra small devices
            <small>Phones (&lt;768px)</small>
          </th>
          <th>
            Small devices
            <small>Tablets (&ge;768px)</small>
          </th>
          <th>
            Medium devices
            <small>Desktops (&ge;992px)</small>
          </th>
          <th>
            Large devices
            <small>Desktops (&ge;1200px)</small>
          </th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <th>Grid behavior</th>
          <td>Horizontal at all times</td>
          <td colspan="3">Collapsed to start, horizontal above breakpoints</td>
        </tr>
        <tr>
          <th>Container width</th>
          <td>None (auto)</td>
          <td>750px</td>
          <td>970px</td>
          <td>1170px</td>
        </tr>
        <tr>
          <th>Class prefix</th>
          <td><code>.col-xs-</code></td>
          <td><code>.col-sm-</code></td>
          <td><code>.col-md-</code></td>
          <td><code>.col-lg-</code></td>
        </tr>
        <tr>
          <th># of columns</th>
          <td colspan="4">12</td>
        </tr>
        <tr>
          <th>Column width</th>
          <td class="text-muted">Auto</td>
161
162
163
          <td>~62px</td>
          <td>~81px</td>
          <td>~97px</td>
Mark Otto's avatar
Mark Otto committed
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
        </tr>
        <tr>
          <th>Gutter width</th>
          <td colspan="4">30px (15px on each side of a column)</td>
        </tr>
        <tr>
          <th>Nestable</th>
          <td colspan="4">Yes</td>
        </tr>
        <tr>
          <th>Offsets</th>
          <td colspan="4">Yes</td>
        </tr>
        <tr>
          <th>Column ordering</th>
          <td colspan="4">Yes</td>
        </tr>
      </tbody>
    </table>
  </div>
Mark Otto's avatar
Mark Otto committed
184

Mark Otto's avatar
Mark Otto committed
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
  <h3 id="grid-example-basic">Example: Stacked-to-horizontal</h3>
  <p>Using a single set of <code>.col-md-*</code> grid classes, you can create a basic grid system that starts out stacked on mobile devices and tablet devices (the extra small to small range) before becoming horizontal on desktop (medium) devices. Place grid columns in any <code>.row</code>.</p>
  <div class="bs-docs-grid">
    <div class="row show-grid">
      <div class="col-md-1">.col-md-1</div>
      <div class="col-md-1">.col-md-1</div>
      <div class="col-md-1">.col-md-1</div>
      <div class="col-md-1">.col-md-1</div>
      <div class="col-md-1">.col-md-1</div>
      <div class="col-md-1">.col-md-1</div>
      <div class="col-md-1">.col-md-1</div>
      <div class="col-md-1">.col-md-1</div>
      <div class="col-md-1">.col-md-1</div>
      <div class="col-md-1">.col-md-1</div>
      <div class="col-md-1">.col-md-1</div>
      <div class="col-md-1">.col-md-1</div>
Mark Otto's avatar
Mark Otto committed
201
    </div>
Mark Otto's avatar
Mark Otto committed
202
203
204
205
206
207
208
209
210
211
212
213
    <div class="row show-grid">
      <div class="col-md-8">.col-md-8</div>
      <div class="col-md-4">.col-md-4</div>
    </div>
    <div class="row show-grid">
      <div class="col-md-4">.col-md-4</div>
      <div class="col-md-4">.col-md-4</div>
      <div class="col-md-4">.col-md-4</div>
    </div>
    <div class="row show-grid">
      <div class="col-md-6">.col-md-6</div>
      <div class="col-md-6">.col-md-6</div>
Mark Otto's avatar
Mark Otto committed
214
    </div>
Mark Otto's avatar
Mark Otto committed
215
  </div>
Mark Otto's avatar
Mark Otto committed
216
217
{% highlight html %}
<div class="row">
218
219
220
221
222
223
224
225
226
227
228
229
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
Mark Otto's avatar
Mark Otto committed
230
</div>
231
<div class="row">
232
233
  <div class="col-md-8">.col-md-8</div>
  <div class="col-md-4">.col-md-4</div>
Mark Otto's avatar
Mark Otto committed
234
</div>
Mark Otto's avatar
Mark Otto committed
235
<div class="row">
236
237
238
  <div class="col-md-4">.col-md-4</div>
  <div class="col-md-4">.col-md-4</div>
  <div class="col-md-4">.col-md-4</div>
Mark Otto's avatar
Mark Otto committed
239
240
</div>
<div class="row">
241
242
  <div class="col-md-6">.col-md-6</div>
  <div class="col-md-6">.col-md-6</div>
Mark Otto's avatar
Mark Otto committed
243
</div>
244
245
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
246
247
  <h3 id="grid-example-fluid">Example: Fluid container</h3>
  <p>Turn any fixed-width grid layout into a full-width layout by changing your outermost <code>.container</code> to <code>.container-fluid</code>.</p>
248
249
250
251
252
253
{% highlight html %}
<div class="container-fluid">
  <div class="row">
    ...
  </div>
</div>
Mark Otto's avatar
Mark Otto committed
254
255
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
256
257
258
259
260
261
  <h3 id="grid-example-mixed">Example: Mobile and desktop</h3>
  <p>Don't want your columns to simply stack in smaller devices? Use the extra small and medium device grid classes by adding <code>.col-xs-*</code> <code>.col-md-*</code> to your columns. See the example below for a better idea of how it all works.</p>
  <div class="bs-docs-grid">
    <div class="row show-grid">
      <div class="col-xs-12 col-md-8">.col-xs-12 .col-md-8</div>
      <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
Mark Otto's avatar
Mark Otto committed
262
    </div>
Mark Otto's avatar
Mark Otto committed
263
264
265
266
    <div class="row show-grid">
      <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
      <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
      <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
Mark Otto's avatar
Mark Otto committed
267
    </div>
Mark Otto's avatar
Mark Otto committed
268
269
270
271
272
    <div class="row show-grid">
      <div class="col-xs-6">.col-xs-6</div>
      <div class="col-xs-6">.col-xs-6</div>
    </div>
  </div>
Mark Otto's avatar
Mark Otto committed
273
{% highlight html %}
274
<!-- Stack the columns on mobile by making one full-width and the other half-width -->
Mark Otto's avatar
Mark Otto committed
275
<div class="row">
276
  <div class="col-xs-12 col-md-8">.col-xs-12 .col-md-8</div>
277
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
Mark Otto's avatar
Mark Otto committed
278
</div>
279
280

<!-- Columns start at 50% wide on mobile and bump up to 33.3% wide on desktop -->
Mark Otto's avatar
Mark Otto committed
281
<div class="row">
282
283
284
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
Mark Otto's avatar
Mark Otto committed
285
</div>
286
287

<!-- Columns are always 50% wide, on mobile and desktop -->
Mark Otto's avatar
Mark Otto committed
288
<div class="row">
289
290
  <div class="col-xs-6">.col-xs-6</div>
  <div class="col-xs-6">.col-xs-6</div>
Mark Otto's avatar
Mark Otto committed
291
292
293
</div>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
294
295
296
297
298
299
  <h3 id="grid-example-mixed-complete">Example: Mobile, tablet, desktops</h3>
  <p>Build on the previous example by creating even more dynamic and powerful layouts with tablet <code>.col-sm-*</code> classes.</p>
  <div class="bs-docs-grid">
    <div class="row show-grid">
      <div class="col-xs-12 col-sm-6 col-md-8">.col-xs-12 .col-sm-6 .col-md-8</div>
      <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
Mark Otto's avatar
Mark Otto committed
300
    </div>
Mark Otto's avatar
Mark Otto committed
301
302
303
304
305
306
    <div class="row show-grid">
      <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
      <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
      <!-- Optional: clear the XS cols if their content doesn't match in height -->
      <div class="clearfix visible-xs"></div>
      <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
Mark Otto's avatar
Mark Otto committed
307
    </div>
Mark Otto's avatar
Mark Otto committed
308
  </div>
Mark Otto's avatar
Mark Otto committed
309
310
{% highlight html %}
<div class="row">
311
  <div class="col-xs-12 col-sm-6 col-md-8">.col-xs-12 .col-sm-6 .col-md-8</div>
312
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
Mark Otto's avatar
Mark Otto committed
313
314
</div>
<div class="row">
315
316
  <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
  <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
317
318
  <!-- Optional: clear the XS cols if their content doesn't match in height -->
  <div class="clearfix visible-xs"></div>
319
  <div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
Mark Otto's avatar
Mark Otto committed
320
321
322
</div>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
323
324
325
326
327
328
329
330
331
332
  <h3 id="grid-responsive-resets">Responsive column resets</h3>
  <p>With the four tiers of grids available you're bound to run into issues where, at certain breakpoints, your columns don't clear quite right as one is taller than the other. To fix that, use a combination of a <code>.clearfix</code> and our <a href="#responsive-utilities">responsive utility classes</a>.</p>
  <div class="bs-docs-grid">
    <div class="row show-grid">
      <div class="col-xs-6 col-sm-3">
        .col-xs-6 .col-sm-3
        <br>
        Resize your viewport or check it out on your phone for an example.
      </div>
      <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
333

Mark Otto's avatar
Mark Otto committed
334
335
      <!-- Add the extra clearfix for only the required viewport -->
      <div class="clearfix visible-xs"></div>
336

Mark Otto's avatar
Mark Otto committed
337
338
339
      <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
      <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
    </div>
340
  </div>
341
342
343
344
345
346
347
348
349
350
351
352
{% highlight html %}
<div class="row">
  <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
  <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>

  <!-- Add the extra clearfix for only the required viewport -->
  <div class="clearfix visible-xs"></div>

  <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
  <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
</div>
{% endhighlight %}
353
  <p>In addition to column clearing at responsive breakpoints, you may need to <strong>reset offsets, pushes, or pulls</strong>. See this in action in <a href="../examples/grid/">the grid example</a>.</p>
354
355
356
357
358
359
360
361
362
363
364
365
{% highlight html %}
<div class="row">
  <div class="col-sm-5 col-md-6">.col-sm-5 .col-md-6</div>
  <div class="col-sm-5 col-sm-offset-2 col-md-6 col-md-offset-0">.col-sm-5 .col-sm-offset-2 .col-md-6 .col-md-offset-0</div>
</div>

<div class="row">
  <div class="col-sm-6 col-md-5 col-lg-6">.col-sm-6 .col-md-5 .col-lg-6</div>
  <div class="col-sm-6 col-md-5 col-md-offset-2 col-lg-6 col-lg-offset-0">.col-sm-6 .col-md-5 .col-md-offset-2 .col-lg-6 .col-lg-offset-0</div>
</div>
{% endhighlight %}

366

Mark Otto's avatar
Mark Otto committed
367
368
369
370
371
372
373
374
375
376
  <h3 id="grid-offsetting">Offsetting columns</h3>
  <p>Move columns to the right using <code>.col-md-offset-*</code> classes. These classes increase the left margin of a column by <code>*</code> columns. For example, <code>.col-md-offset-4</code> moves <code>.col-md-4</code> over four columns.</p>
  <div class="bs-docs-grid">
    <div class="row show-grid">
      <div class="col-md-4">.col-md-4</div>
      <div class="col-md-4 col-md-offset-4">.col-md-4 .col-md-offset-4</div>
    </div>
    <div class="row show-grid">
      <div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
      <div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
Mark Otto's avatar
Mark Otto committed
377
    </div>
Mark Otto's avatar
Mark Otto committed
378
379
    <div class="row show-grid">
      <div class="col-md-6 col-md-offset-3">.col-md-6 .col-md-offset-3</div>
Mark Otto's avatar
Mark Otto committed
380
    </div>
Mark Otto's avatar
Mark Otto committed
381
  </div>
Mark Otto's avatar
Mark Otto committed
382
383
{% highlight html %}
<div class="row">
384
385
  <div class="col-md-4">.col-md-4</div>
  <div class="col-md-4 col-md-offset-4">.col-md-4 .col-md-offset-4</div>
Mark Otto's avatar
Mark Otto committed
386
387
</div>
<div class="row">
388
389
  <div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
  <div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
Mark Otto's avatar
Mark Otto committed
390
391
</div>
<div class="row">
392
  <div class="col-md-6 col-md-offset-3">.col-md-6 .col-md-offset-3</div>
Mark Otto's avatar
Mark Otto committed
393
394
395
396
</div>
{% endhighlight %}


Mark Otto's avatar
Mark Otto committed
397
398
399
400
401
402
403
404
405
406
407
  <h3 id="grid-nesting">Nesting columns</h3>
  <p>To nest your content with the default grid, add a new <code>.row</code> and set of <code>.col-md-*</code> columns within an existing <code>.col-md-*</code> column. Nested rows should include a set of columns that add up to 12 or less.</p>
  <div class="row show-grid">
    <div class="col-md-9">
      Level 1: .col-md-9
      <div class="row show-grid">
        <div class="col-md-6">
          Level 2: .col-md-6
        </div>
        <div class="col-md-6">
          Level 2: .col-md-6
Mark Otto's avatar
Mark Otto committed
408
409
410
        </div>
      </div>
    </div>
Mark Otto's avatar
Mark Otto committed
411
  </div>
Mark Otto's avatar
Mark Otto committed
412
413
{% highlight html %}
<div class="row">
414
  <div class="col-md-9">
415
    Level 1: .col-md-9
Mark Otto's avatar
Mark Otto committed
416
    <div class="row">
417
      <div class="col-md-6">
418
        Level 2: .col-md-6
Mark Otto's avatar
Mark Otto committed
419
      </div>
420
      <div class="col-md-6">
421
        Level 2: .col-md-6
Mark Otto's avatar
Mark Otto committed
422
423
424
425
426
427
      </div>
    </div>
  </div>
</div>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
428
429
430
431
432
433
  <h3 id="grid-column-ordering">Column ordering</h3>
  <p>Easily change the order of our built-in grid columns with <code>.col-md-push-*</code> and <code>.col-md-pull-*</code> modifier classes.</p>
  <div class="row show-grid">
    <div class="col-md-9 col-md-push-3">.col-md-9 .col-md-push-3</div>
    <div class="col-md-3 col-md-pull-9">.col-md-3 .col-md-pull-9</div>
  </div>
Mark Otto's avatar
Mark Otto committed
434
435

{% highlight html %}
436
<div class="row">
437
438
  <div class="col-md-9 col-md-push-3">.col-md-9 .col-md-push-3</div>
  <div class="col-md-3 col-md-pull-9">.col-md-3 .col-md-pull-9</div>
Mark Otto's avatar
Mark Otto committed
439
440
441
</div>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
442
443
  <h3 id="grid-less">Less mixins and variables</h3>
  <p>In addition to <a href="#grid-example-basic">prebuilt grid classes</a> for fast layouts, Bootstrap includes Less variables and mixins for quickly generating your own simple, semantic layouts.</p>
Mark Otto's avatar
Mark Otto committed
444

Mark Otto's avatar
Mark Otto committed
445
446
  <h4>Variables</h4>
  <p>Variables determine the number of columns, the gutter width, and the media query point at which to begin floating columns. We use these to generate the predefined grid classes documented above, as well as for the custom mixins listed below.</p>
447
{% highlight scss %}
Mark Otto's avatar
Mark Otto committed
448
449
450
451
452
@grid-columns:              12;
@grid-gutter-width:         30px;
@grid-float-breakpoint:     768px;
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
453
454
  <h4>Mixins</h4>
  <p>Mixins are used in conjunction with the grid variables to generate semantic CSS for individual grid columns.</p>
455
{% highlight scss %}
Mark Otto's avatar
Mark Otto committed
456
// Creates a wrapper for a series of columns
457
.make-row(@gutter: @grid-gutter-width) {
Mark Otto's avatar
Mark Otto committed
458
459
  // Then clear the floated columns
  .clearfix();
460

Chris Rebert's avatar
Chris Rebert committed
461
  @media (min-width: @screen-sm-min) {
462
463
464
465
466
467
468
469
470
    margin-left:  (@gutter / -2);
    margin-right: (@gutter / -2);
  }

  // Negative margin nested rows out to align the content of columns
  .row {
    margin-left:  (@gutter / -2);
    margin-right: (@gutter / -2);
  }
Mark Otto's avatar
Mark Otto committed
471
472
}

473
474
// Generate the extra small columns
.make-xs-column(@columns; @gutter: @grid-gutter-width) {
475
476
477
478
479
480
481
482
  position: relative;
  // Prevent columns from collapsing when empty
  min-height: 1px;
  // Inner gutter via padding
  padding-left:  (@gutter / 2);
  padding-right: (@gutter / 2);

  // Calculate width based on number of columns available
Mark Otto's avatar
Mark Otto committed
483
484
  @media (min-width: @grid-float-breakpoint) {
    float: left;
485
    width: percentage((@columns / @grid-columns));
Mark Otto's avatar
Mark Otto committed
486
487
488
  }
}

489
490
491
492
493
494
495
496
497
498
// Generate the small columns
.make-sm-column(@columns; @gutter: @grid-gutter-width) {
  position: relative;
  // Prevent columns from collapsing when empty
  min-height: 1px;
  // Inner gutter via padding
  padding-left:  (@gutter / 2);
  padding-right: (@gutter / 2);

  // Calculate width based on number of columns available
Chris Rebert's avatar
Chris Rebert committed
499
  @media (min-width: @screen-sm-min) {
500
501
502
503
504
505
506
    float: left;
    width: percentage((@columns / @grid-columns));
  }
}

// Generate the small column offsets
.make-sm-column-offset(@columns) {
Chris Rebert's avatar
Chris Rebert committed
507
  @media (min-width: @screen-sm-min) {
Mark Otto's avatar
Mark Otto committed
508
509
510
    margin-left: percentage((@columns / @grid-columns));
  }
}
511
.make-sm-column-push(@columns) {
Chris Rebert's avatar
Chris Rebert committed
512
  @media (min-width: @screen-sm-min) {
513
514
515
    left: percentage((@columns / @grid-columns));
  }
}
516
.make-sm-column-pull(@columns) {
Chris Rebert's avatar
Chris Rebert committed
517
  @media (min-width: @screen-sm-min) {
518
519
520
521
    right: percentage((@columns / @grid-columns));
  }
}

522
523
524
525
526
527
528
529
530
531
// Generate the medium columns
.make-md-column(@columns; @gutter: @grid-gutter-width) {
  position: relative;
  // Prevent columns from collapsing when empty
  min-height: 1px;
  // Inner gutter via padding
  padding-left:  (@gutter / 2);
  padding-right: (@gutter / 2);

  // Calculate width based on number of columns available
Chris Rebert's avatar
Chris Rebert committed
532
  @media (min-width: @screen-md-min) {
533
534
535
536
537
    float: left;
    width: percentage((@columns / @grid-columns));
  }
}

538
// Generate the medium column offsets
539
.make-md-column-offset(@columns) {
Chris Rebert's avatar
Chris Rebert committed
540
  @media (min-width: @screen-md-min) {
541
542
543
544
    margin-left: percentage((@columns / @grid-columns));
  }
}
.make-md-column-push(@columns) {
Chris Rebert's avatar
Chris Rebert committed
545
  @media (min-width: @screen-md-min) {
546
547
548
549
    left: percentage((@columns / @grid-columns));
  }
}
.make-md-column-pull(@columns) {
Chris Rebert's avatar
Chris Rebert committed
550
  @media (min-width: @screen-md-min) {
551
552
553
554
555
556
    right: percentage((@columns / @grid-columns));
  }
}

// Generate the large columns
.make-lg-column(@columns; @gutter: @grid-gutter-width) {
557
558
559
560
561
562
563
564
  position: relative;
  // Prevent columns from collapsing when empty
  min-height: 1px;
  // Inner gutter via padding
  padding-left:  (@gutter / 2);
  padding-right: (@gutter / 2);

  // Calculate width based on number of columns available
Chris Rebert's avatar
Chris Rebert committed
565
  @media (min-width: @screen-lg-min) {
566
    float: left;
567
568
569
    width: percentage((@columns / @grid-columns));
  }
}
570
571
572

// Generate the large column offsets
.make-lg-column-offset(@columns) {
Chris Rebert's avatar
Chris Rebert committed
573
  @media (min-width: @screen-lg-min) {
574
575
576
577
    margin-left: percentage((@columns / @grid-columns));
  }
}
.make-lg-column-push(@columns) {
Chris Rebert's avatar
Chris Rebert committed
578
  @media (min-width: @screen-lg-min) {
579
580
581
582
    left: percentage((@columns / @grid-columns));
  }
}
.make-lg-column-pull(@columns) {
Chris Rebert's avatar
Chris Rebert committed
583
  @media (min-width: @screen-lg-min) {
584
585
586
    right: percentage((@columns / @grid-columns));
  }
}
Mark Otto's avatar
Mark Otto committed
587
588
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
589
590
  <h4>Example usage</h4>
  <p>You can modify the variables to your own custom values, or just use the mixins with their default values. Here's an example of using the default settings to create a two-column layout with a gap between.</p>
591
{% highlight scss %}
Mark Otto's avatar
Mark Otto committed
592
593
594
595
.wrapper {
  .make-row();
}
.content-main {
596
  .make-lg-column(8);
Mark Otto's avatar
Mark Otto committed
597
598
}
.content-secondary {
599
600
  .make-lg-column(3);
  .make-lg-column-offset(1);
Mark Otto's avatar
Mark Otto committed
601
602
603
604
605
606
607
608
}
{% endhighlight %}
{% highlight html %}
<div class="wrapper">
  <div class="content-main">...</div>
  <div class="content-secondary">...</div>
</div>
{% endhighlight %}
Mark Otto's avatar
Mark Otto committed
609
</div>
Mark Otto's avatar
Mark Otto committed
610
611
612



Mark Otto's avatar
Mark Otto committed
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
638
639
640
641
642
643
644
645
646
647
648
649
650
<!-- Typography
================================================== -->
<div class="bs-docs-section">
  <h1 id="type" class="page-header">Typography</h1>

  <!-- Headings -->
  <h2 id="type-headings">Headings</h2>
  <p>All HTML headings, <code>&lt;h1&gt;</code> through <code>&lt;h6&gt;</code>, are available. <code>.h1</code> through <code>.h6</code> classes are also available, for when you want to match the font styling of a heading but still want your text to be displayed inline.</p>
  <div class="bs-example bs-example-type">
    <table class="table">
      <tbody>
        <tr>
          <td><h1>h1. Bootstrap heading</h1></td>
          <td class="type-info">Semibold 36px</td>
        </tr>
        <tr>
          <td><h2>h2. Bootstrap heading</h2></td>
          <td class="type-info">Semibold 30px</td>
        </tr>
        <tr>
          <td><h3>h3. Bootstrap heading</h3></td>
          <td class="type-info">Semibold 24px</td>
        </tr>
        <tr>
          <td><h4>h4. Bootstrap heading</h4></td>
          <td class="type-info">Semibold 18px</td>
        </tr>
        <tr>
          <td><h5>h5. Bootstrap heading</h5></td>
          <td class="type-info">Semibold 14px</td>
        </tr>
        <tr>
          <td><h6>h6. Bootstrap heading</h6></td>
          <td class="type-info">Semibold 12px</td>
        </tr>
      </tbody>
    </table>
  </div>
Mark Otto's avatar
Mark Otto committed
651
{% highlight html %}
652
653
654
655
656
657
<h1>h1. Bootstrap heading</h1>
<h2>h2. Bootstrap heading</h2>
<h3>h3. Bootstrap heading</h3>
<h4>h4. Bootstrap heading</h4>
<h5>h5. Bootstrap heading</h5>
<h6>h6. Bootstrap heading</h6>
Mark Otto's avatar
Mark Otto committed
658
659
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
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
  <p>Create lighter, secondary text in any heading with a generic <code>&lt;small&gt;</code> tag or the <code>.small</code> class.</p>
  <div class="bs-example bs-example-type">
    <table class="table">
      <tbody>
        <tr>
          <td><h1>h1. Bootstrap heading <small>Secondary text</small></h1></td>
        </tr>
        <tr>
          <td><h2>h2. Bootstrap heading <small>Secondary text</small></h2></td>
        </tr>
        <tr>
          <td><h3>h3. Bootstrap heading <small>Secondary text</small></h3></td>
        </tr>
        <tr>
          <td><h4>h4. Bootstrap heading <small>Secondary text</small></h4></td>
        </tr>
        <tr>
          <td><h5>h5. Bootstrap heading <small>Secondary text</small></h5></td>
        </tr>
        <tr>
          <td><h6>h6. Bootstrap heading <small>Secondary text</small></h6></td>
        </tr>
      </tbody>
    </table>
  </div>
685
686
687
688
689
690
691
692
693
694
{% highlight html %}
<h1>h1. Bootstrap heading <small>Secondary text</small></h1>
<h2>h2. Bootstrap heading <small>Secondary text</small></h2>
<h3>h3. Bootstrap heading <small>Secondary text</small></h3>
<h4>h4. Bootstrap heading <small>Secondary text</small></h4>
<h5>h5. Bootstrap heading <small>Secondary text</small></h5>
<h6>h6. Bootstrap heading <small>Secondary text</small></h6>
{% endhighlight %}


Mark Otto's avatar
Mark Otto committed
695
696
697
698
699
700
701
702
  <!-- Body copy -->
  <h2 id="type-body-copy">Body copy</h2>
  <p>Bootstrap's global default <code>font-size</code> is <strong>14px</strong>, with a <code>line-height</code> of <strong>1.428</strong>. This is applied to the <code>&lt;body&gt;</code> and all paragraphs. In addition, <code>&lt;p&gt;</code> (paragraphs) receive a bottom margin of half their computed line-height (10px by default).</p>
  <div class="bs-example">
    <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.</p>
    <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec ullamcorper nulla non metus auctor fringilla. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla.</p>
    <p>Maecenas sed diam eget risus varius blandit sit amet non magna. Donec id elit non mi porta gravida at eget metus. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.</p>
  </div>
Mark Otto's avatar
Mark Otto committed
703
704
705
706
{% highlight html %}
<p>...</p>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
707
708
709
710
711
712
  <!-- Body copy .lead -->
  <h3>Lead body copy</h3>
  <p>Make a paragraph stand out by adding <code>.lead</code>.</p>
  <div class="bs-example">
    <p class="lead">Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus.</p>
  </div>
Mark Otto's avatar
Mark Otto committed
713
714
715
716
{% highlight html %}
<p class="lead">...</p>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
717
718
719
  <!-- Using Less -->
  <h3>Built with Less</h3>
  <p>The typographic scale is based on two Less variables in <strong>variables.less</strong>: <code>@font-size-base</code> and <code>@line-height-base</code>. The first is the base font-size used throughout and the second is the base line-height. We use those variables and some simple math to create the margins, paddings, and line-heights of all our type and more. Customize them and Bootstrap adapts.</p>
Mark Otto's avatar
Mark Otto committed
720

mrmrs's avatar
mrmrs committed
721
722
723
724
725
726
727
728
729
730
731
732
733
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
766
767
  <!-- Inline text elements -->
  <h2 id="type-inline-text">Inline text elements</h2>
  <h3>Marked text</h3>
  <p>For indicating blocks of text that have been deleted use the <code>&lt;mark&gt;</code> tag.</p>
  <div class="bs-example">
    <p>You can use the mark tag to <mark>highlight</mark> text.</p>
  </div>
{% highlight html %}
<mark>This line of text is meant to be treated as deleted text.</mark>
{% endhighlight %}


  <h3>Deleted text</h3>
  <p>For indicating blocks of text that have been deleted use the <code>&lt;del&gt;</code> tag.</p>
  <div class="bs-example">
    <p><del>This line of text is meant to be treated as deleted text.</del></p>
  </div>
{% highlight html %}
<del>This line of text is meant to be treated as deleted text.</del>
{% endhighlight %}

  <h3>Strikethrough text</h3>
  <p>For indicating blocks of text that are no longer relevant use the <code>&lt;s&gt;</code> tag.</p>
  <div class="bs-example">
    <p><s>This line of text is meant to be treated as no longer accurate.</s></p>
  </div>
{% highlight html %}
<s>This line of text is meant to be treated as no longer accurate.</s>
{% endhighlight %}

  <h3>Inserted text</h3>
  <p>For indicating additions to the document use the <code>&lt;ins&gt;</code> tag.</p>
  <div class="bs-example">
    <p><ins>This line of text is meant to be treated as an addition to the document.</ins></p>
  </div>
{% highlight html %}
<ins>This line of text is meant to be treated as an addition to the document.</ins>
{% endhighlight %}

  <h3>Underlined text</h3>
  <p>To underline text use the <code>&lt;u&gt;</code> tag.</p>
  <div class="bs-example">
    <p><u>This line of text is will render as underlined</u></p>
  </div>
{% highlight html %}
<u>This line of text is will render as underlined</u>
{% endhighlight %}
Mark Otto's avatar
Mark Otto committed
768

Mark Otto's avatar
Mark Otto committed
769
  <p>Make use of HTML's default emphasis tags with lightweight styles.</p>
Mark Otto's avatar
Mark Otto committed
770

Mark Otto's avatar
Mark Otto committed
771
772
  <h3>Small text</h3>
  <p>For de-emphasizing inline or blocks of text, use the <code>&lt;small&gt;</code> tag to set text at 85% the size of the parent. Heading elements receive their own <code>font-size</code> for nested <code>&lt;small&gt;</code> elements.</p>
773
  <p>You may alternatively use an inline element with <code>.small</code> in place of any <code>&lt;small&gt;</code>.</p>
Mark Otto's avatar
Mark Otto committed
774
775
776
  <div class="bs-example">
    <p><small>This line of text is meant to be treated as fine print.</small></p>
  </div>
Mark Otto's avatar
Mark Otto committed
777
778
779
780
781
{% highlight html %}
<small>This line of text is meant to be treated as fine print.</small>
{% endhighlight %}


Mark Otto's avatar
Mark Otto committed
782
783
784
785
786
  <h3>Bold</h3>
  <p>For emphasizing a snippet of text with a heavier font-weight.</p>
  <div class="bs-example">
    <p>The following snippet of text is <strong>rendered as bold text</strong>.</p>
  </div>
Mark Otto's avatar
Mark Otto committed
787
788
789
790
{% highlight html %}
<strong>rendered as bold text</strong>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
791
792
793
794
795
  <h3>Italics</h3>
  <p>For emphasizing a snippet of text with italics.</p>
  <div class="bs-example">
    <p>The following snippet of text is <em>rendered as italicized text</em>.</p>
  </div>
Mark Otto's avatar
Mark Otto committed
796
797
798
799
{% highlight html %}
<em>rendered as italicized text</em>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
800
801
802
803
  <div class="bs-callout bs-callout-info">
    <h4>Alternate elements</h4>
    <p>Feel free to use <code>&lt;b&gt;</code> and <code>&lt;i&gt;</code> in HTML5. <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>
  </div>
Mark Otto's avatar
Mark Otto committed
804

mrmrs's avatar
mrmrs committed
805
  <h2 id="type-alignment">Alignment classes</h2>
Mark Otto's avatar
Mark Otto committed
806
807
808
809
810
811
812
  <p>Easily realign text to components with text alignment classes.</p>
  <div class="bs-example">
    <p class="text-left">Left aligned text.</p>
    <p class="text-center">Center aligned text.</p>
    <p class="text-right">Right aligned text.</p>
    <p class="text-justify">Justified text.</p>
  </div>
Mark Otto's avatar
Mark Otto committed
813
814
815
816
{% highlight html %}
<p class="text-left">Left aligned text.</p>
<p class="text-center">Center aligned text.</p>
<p class="text-right">Right aligned text.</p>
Chris Rebert's avatar
Chris Rebert committed
817
<p class="text-justify">Justified text.</p>
Mark Otto's avatar
Mark Otto committed
818
819
820
{% endhighlight %}


Mark Otto's avatar
Mark Otto committed
821
822
823
  <!-- Abbreviations -->
  <h2 id="type-abbreviations">Abbreviations</h2>
  <p>Stylized implementation of HTML's <code>&lt;abbr&gt;</code> element for abbreviations and acronyms to show the expanded version on hover. Abbreviations with a <code>title</code> attribute have a light dotted bottom border and a help cursor on hover, providing additional context on hover.</p>
Mark Otto's avatar
Mark Otto committed
824

Mark Otto's avatar
Mark Otto committed
825
826
827
828
829
  <h3>Basic abbreviation</h3>
  <p>For expanded text on long hover of an abbreviation, include the <code>title</code> attribute with the <code>&lt;abbr&gt;</code> element.</p>
  <div class="bs-example">
    <p>An abbreviation of the word attribute is <abbr title="attribute">attr</abbr>.</p>
  </div>
Mark Otto's avatar
Mark Otto committed
830
831
832
833
{% highlight html %}
<abbr title="attribute">attr</abbr>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
834
835
836
837
838
  <h3>Initialism</h3>
  <p>Add <code>.initialism</code> to an abbreviation for a slightly smaller font-size.</p>
  <div class="bs-example">
    <p><abbr title="HyperText Markup Language" class="initialism">HTML</abbr> is the best thing since sliced bread.</p>
  </div>
Mark Otto's avatar
Mark Otto committed
839
840
841
842
843
{% highlight html %}
<abbr title="HyperText Markup Language" class="initialism">HTML</abbr>
{% endhighlight %}


Mark Otto's avatar
Mark Otto committed
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
  <!-- Addresses -->
  <h2 id="type-addresses">Addresses</h2>
  <p>Present contact information for the nearest ancestor or the entire body of work. Preserve formatting by ending all lines with <code>&lt;br&gt;</code>.</p>
  <div class="bs-example">
    <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 href="mailto:#">first.last@example.com</a>
    </address>
  </div>
Mark Otto's avatar
Mark Otto committed
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
{% highlight html %}
<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 href="mailto:#">first.last@example.com</a>
</address>
{% endhighlight %}


Mark Otto's avatar
Mark Otto committed
874
875
876
  <!-- Blockquotes -->
  <h2 id="type-blockquotes">Blockquotes</h2>
  <p>For quoting blocks of content from another source within your document.</p>
Mark Otto's avatar
Mark Otto committed
877

Mark Otto's avatar
Mark Otto committed
878
879
880
881
882
883
884
  <h3>Default blockquote</h3>
  <p>Wrap <code>&lt;blockquote&gt;</code> around any <abbr title="HyperText Markup Language">HTML</abbr> as the quote. For straight quotes, we recommend a <code>&lt;p&gt;</code>.</p>
  <div class="bs-example">
    <blockquote>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p>
    </blockquote>
  </div>
Mark Otto's avatar
Mark Otto committed
885
886
887
888
889
890
{% highlight html %}
<blockquote>
  <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p>
</blockquote>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
891
892
  <h3>Blockquote options</h3>
  <p>Style and content changes for simple variations on a standard <code>&lt;blockquote&gt;</code>.</p>
Mark Otto's avatar
Mark Otto committed
893

Mark Otto's avatar
Mark Otto committed
894
895
896
897
898
899
900
901
  <h4>Naming a source</h4>
  <p>Add a <code>&lt;footer&gt;</code> for identifying the source. Wrap the name of the source work in <code>&lt;cite&gt;</code>.</p>
  <div class="bs-example">
    <blockquote>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p>
      <footer>Someone famous in <cite title="Source Title">Source Title</cite></footer>
    </blockquote>
  </div>
Mark Otto's avatar
Mark Otto committed
902
903
904
{% highlight html %}
<blockquote>
  <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p>
905
  <footer>Someone famous in <cite title="Source Title">Source Title</cite></footer>
Mark Otto's avatar
Mark Otto committed
906
907
908
</blockquote>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
909
  <h4>Alternate displays</h4>
910
  <p>Add <code>.blockquote-reverse</code> for a blockquote with right-aligned content.</p>
Mark Otto's avatar
Mark Otto committed
911
912
913
914
915
916
  <div class="bs-example" style="overflow: hidden;">
    <blockquote class="blockquote-reverse">
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p>
      <footer>Someone famous in <cite title="Source Title">Source Title</cite></footer>
    </blockquote>
  </div>
Mark Otto's avatar
Mark Otto committed
917
{% highlight html %}
918
<blockquote class="blockquote-reverse">
Mark Otto's avatar
Mark Otto committed
919
920
921
922
923
  ...
</blockquote>
{% endhighlight %}


Mark Otto's avatar
Mark Otto committed
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
  <!-- Lists -->
  <h2 id="type-lists">Lists</h2>

  <h3>Unordered</h3>
  <p>A list of items in which the order does <em>not</em> explicitly matter.</p>
  <div class="bs-example">
    <ul>
      <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
        <ul>
          <li>Phasellus iaculis neque</li>
          <li>Purus sodales ultricies</li>
          <li>Vestibulum laoreet porttitor sem</li>
          <li>Ac tristique libero volutpat at</li>
        </ul>
      </li>
      <li>Faucibus porta lacus fringilla vel</li>
      <li>Aenean sit amet erat nunc</li>
      <li>Eget porttitor lorem</li>
    </ul>
  </div>
Mark Otto's avatar
Mark Otto committed
948
949
950
951
952
953
{% highlight html %}
<ul>
  <li>...</li>
</ul>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
954
955
956
957
958
959
960
961
962
963
964
965
966
967
  <h3>Ordered</h3>
  <p>A list of items in which the order <em>does</em> explicitly matter.</p>
  <div class="bs-example">
    <ol>
      <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>
    </ol>
  </div>
Mark Otto's avatar
Mark Otto committed
968
969
970
971
972
973
{% highlight html %}
<ol>
  <li>...</li>
</ol>
{% endhighlight %}

Mark Otto's avatar
Mark Otto committed
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
  <h3>Unstyled</h3>
  <p>Remove the default <code>list-style</code> and left margin on list items (immediate children only). <strong>This only applies to immediate children list items</strong>, meaning you will need to add the class for any nested lists as well.</p>
  <div class="bs-example">
    <ul class="list-unstyled">
      <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
        <ul>
          <li>Phasellus iaculis neque</li>
          <li>Purus sodales ultricies</li>
          <li>Vestibulum laoreet porttitor sem</li>
          <li>Ac tristique libero volutpat at</li>
        </ul>
      </li>
      <li>Faucibus porta lacus fringilla vel</li>
      <li>Aenean sit amet erat nunc</li>
      <li>Eget porttitor lorem</li>
    </ul>
  </div>
Mark Otto's avatar
Mark Otto committed
995
996
997
998
999
1000
{% highlight html %}
<ul class="list-unstyled">
  <li>...</li>
</ul>
{% endhighlight %}

For faster browsing, not all history is shown. View entire blame