customize.html 13.1 KB
Newer Older
Mark Otto's avatar
Mark Otto committed
1
---
2
layout: default
Mark Otto's avatar
Mark Otto committed
3
title: Customize and download
Mark Otto's avatar
Mark Otto committed
4
slug: customize
Quy Ton's avatar
Quy Ton committed
5
lead: Customize Bootstrap's components, Less variables, and jQuery plugins to get your very own version.
Mark Otto's avatar
Mark Otto committed
6
7
---

8

9
10
11
12
13
14
<!-- less.js isn't IE8-compatible and throws an exception during initialization, so our Blob compatibility check and error messaging code never get called in that case.
  So we use a conditional comment instead to inform folks about the lack of IE8 support.
-->
<!--[if lt IE 9]>
  <style>
    .bs-customizer,
15
    .bs-customizer-import,
16
17
18
19
    .bs-docs-sidebar {
      display: none;
    }
  </style>
20
  <div class="alert alert-danger">
21
22
23
24
25
    <strong>The Bootstrap Customizer does not support IE9 and below.</strong><br>
    Please take a second to <a href="http://browsehappy.com/">upgrade to a more modern browser</a>.
  </div>
<![endif]-->

Mark Otto's avatar
Mark Otto committed
26
<!-- Customizer form -->
27

28
29
30
31
32
<div id="defaults-change-alert" class="alert alert-warning alert-dismissible" role="alert">
  <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  <strong>Heads up!</strong> The default value for <code>@brand-primary</code> has changed in the latest release to improve contrast and accessibility. Please double check your compiled CSS when upgrading.
</div>

33
34
35
36
37
38
39
40
41
42
<div class="bs-docs-section bs-customizer-import">
  <div id="import-drop-target" class="bs-dropzone">
    <h2></h2>
    <p class="lead">Have an existing configuration? Upload your <code>config.json</code> to import it.</p>
    <p>Drag and drop here, or <label id="import-manual-trigger" class="btn-link">manually upload<input type="file" id="import-file-select" class="hidden"></label>.</p>
    <hr>
    <p><strong>Don't have one?</strong> That's okay—just start customizing the fields below.</p>
  </div>
</div><!-- /import -->

43
<form class="bs-customizer">
44
  <div class="bs-docs-section" id="less-section">
45
    <button class="btn btn-default toggle" type="button">Toggle all</button>
Quy Ton's avatar
Quy Ton committed
46
    <h1 id="less" class="page-header">Less files</h1>
47

Quy Ton's avatar
Quy Ton committed
48
    <p class="lead">Choose which Less files to compile into your custom build of Bootstrap. Not sure which files to use? Read through the <a href="../css/">CSS</a> and <a href="../components/">Components</a> pages in the docs.</p>
Mark Otto's avatar
Mark Otto committed
49

Mark Otto's avatar
Mark Otto committed
50
    <div class="row">
Mark Otto's avatar
Mark Otto committed
51
      <div class="col-xs-6 col-sm-4">
52
        <h3>Common CSS</h3>
Mark Otto's avatar
Mark Otto committed
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="print.less">
            Print media styles
          </label>
        </div>
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="type.less">
            Typography
          </label>
        </div>
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="code.less">
            Code
          </label>
        </div>
71
72
73
74
75
76
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="grid.less">
            Grid system
          </label>
        </div>
Mark Otto's avatar
Mark Otto committed
77
78
79
80
81
82
83
84
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="tables.less">
            Tables
          </label>
        </div>
        <div class="checkbox">
          <label>
85
            <input type="checkbox" checked value="forms.less" data-dependents="navbar.less,input-groups.less">
Mark Otto's avatar
Mark Otto committed
86
87
88
89
90
            Forms
          </label>
        </div>
        <div class="checkbox">
          <label>
91
            <input type="checkbox" checked value="buttons.less" data-dependents="button-groups.less">
Mark Otto's avatar
Mark Otto committed
92
93
94
            Buttons
          </label>
        </div>
95
96
97
98
99
100
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="responsive-utilities.less">
            Responsive utilities
          </label>
        </div>
101
102
      </div><!-- .col-xs-6 .col-sm-4 -->

Mark Otto's avatar
Mark Otto committed
103
      <div class="col-xs-6 col-sm-4">
104
        <h3>Components</h3>
Mark Otto's avatar
Mark Otto committed
105
106
        <div class="checkbox">
          <label>
107
108
            <input type="checkbox" checked value="glyphicons.less">
            Glyphicons
Mark Otto's avatar
Mark Otto committed
109
          </label>
110
        </div>
Mark Otto's avatar
Mark Otto committed
111
112
        <div class="checkbox">
          <label>
113
            <input type="checkbox" checked value="button-groups.less" data-dependencies="buttons.less">
114
            Button groups
Mark Otto's avatar
Mark Otto committed
115
116
117
118
          </label>
        </div>
        <div class="checkbox">
          <label>
119
            <input type="checkbox" checked value="input-groups.less" data-dependencies="forms.less">
120
            Input groups
Mark Otto's avatar
Mark Otto committed
121
122
123
124
          </label>
        </div>
        <div class="checkbox">
          <label>
125
            <input type="checkbox" checked value="navs.less" data-dependents="navbar.less">
Mark Otto's avatar
Mark Otto committed
126
127
128
129
130
            Navs
          </label>
        </div>
        <div class="checkbox">
          <label>
131
            <input type="checkbox" checked value="navbar.less" data-dependencies="forms.less,navs.less">
Mark Otto's avatar
Mark Otto committed
132
133
134
            Navbar
          </label>
        </div>
135
136
137
138
139
140
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="breadcrumbs.less">
            Breadcrumbs
          </label>
        </div>
Mark Otto's avatar
Mark Otto committed
141
142
143
144
145
146
147
148
149
150
151
152
153
154
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="pagination.less">
            Pagination
          </label>
        </div>
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="pager.less">
            Pager
          </label>
        </div>
        <div class="checkbox">
          <label>
155
156
            <input type="checkbox" checked value="labels.less">
            Labels
Mark Otto's avatar
Mark Otto committed
157
158
159
160
          </label>
        </div>
        <div class="checkbox">
          <label>
161
162
            <input type="checkbox" checked value="badges.less">
            Badges
Mark Otto's avatar
Mark Otto committed
163
164
165
166
          </label>
        </div>
        <div class="checkbox">
          <label>
167
168
            <input type="checkbox" checked value="jumbotron.less">
            Jumbotron
Mark Otto's avatar
Mark Otto committed
169
170
171
172
          </label>
        </div>
        <div class="checkbox">
          <label>
173
174
            <input type="checkbox" checked value="thumbnails.less">
            Thumbnails
Mark Otto's avatar
Mark Otto committed
175
          </label>
176
        </div>
Mark Otto's avatar
Mark Otto committed
177
178
179
180
181
182
183
184
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="alerts.less">
            Alerts
          </label>
        </div>
        <div class="checkbox">
          <label>
185
186
            <input type="checkbox" checked value="progress-bars.less">
            Progress bars
Mark Otto's avatar
Mark Otto committed
187
188
189
190
          </label>
        </div>
        <div class="checkbox">
          <label>
191
192
            <input type="checkbox" checked value="media.less">
            Media items
Mark Otto's avatar
Mark Otto committed
193
194
195
196
          </label>
        </div>
        <div class="checkbox">
          <label>
197
198
            <input type="checkbox" checked value="list-group.less">
            List groups
Mark Otto's avatar
Mark Otto committed
199
200
201
202
          </label>
        </div>
        <div class="checkbox">
          <label>
203
204
            <input type="checkbox" checked value="panels.less">
            Panels
Mark Otto's avatar
Mark Otto committed
205
206
207
          </label>
        </div>
        <div class="checkbox">
Mark Otto's avatar
Mark Otto committed
208
209
210
211
212
213
          <label>
            <input type="checkbox" checked value="responsive-embed.less">
            Responsive embed
          </label>
        </div>
        <div class="checkbox">
Mark Otto's avatar
Mark Otto committed
214
          <label>
215
216
            <input type="checkbox" checked value="wells.less">
            Wells
Mark Otto's avatar
Mark Otto committed
217
218
219
220
          </label>
        </div>
        <div class="checkbox">
          <label>
221
222
            <input type="checkbox" checked value="close.less">
            Close icon
Mark Otto's avatar
Mark Otto committed
223
224
          </label>
        </div>
225
226
227
228
      </div><!-- .col-xs-6 .col-sm-4 -->

      <div class="col-xs-6 col-sm-4">
        <h3>JavaScript components</h3>
229
230
231
232
233
234
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="component-animations.less">
            Component animations (for JS)
          </label>
        </div>
Mark Otto's avatar
Mark Otto committed
235
236
        <div class="checkbox">
          <label>
237
238
            <input type="checkbox" checked value="dropdowns.less">
            Dropdowns
Mark Otto's avatar
Mark Otto committed
239
240
241
242
          </label>
        </div>
        <div class="checkbox">
          <label>
243
244
            <input type="checkbox" checked value="tooltip.less">
            Tooltips
Mark Otto's avatar
Mark Otto committed
245
246
          </label>
        </div>
Mark Otto's avatar
Mark Otto committed
247
248
        <div class="checkbox">
          <label>
249
250
            <input type="checkbox" checked value="popovers.less">
            Popovers
Mark Otto's avatar
Mark Otto committed
251
252
          </label>
        </div>
Mark Otto's avatar
Mark Otto committed
253
254
        <div class="checkbox">
          <label>
255
256
            <input type="checkbox" checked value="modals.less">
            Modals
Mark Otto's avatar
Mark Otto committed
257
258
259
260
          </label>
        </div>
        <div class="checkbox">
          <label>
261
262
            <input type="checkbox" checked value="carousel.less">
            Carousel
Mark Otto's avatar
Mark Otto committed
263
          </label>
264
        </div>
265
266
      </div><!-- .col-xs-6 .col-sm-4 -->
    </div><!-- /.row -->
Mark Otto's avatar
Mark Otto committed
267
  </div>
268

269
  <div class="bs-docs-section" id="plugin-section">
270
271
272
    <button class="btn btn-default toggle" type="button">Toggle all</button>
    <h1 id="plugins" class="page-header">jQuery plugins</h1>

273
    <p class="lead">Choose which jQuery plugins should be included in your custom JavaScript files. Unsure what to include? Read the <a href="../javascript/">JavaScript</a> page in the docs.</p>
Mark Otto's avatar
Mark Otto committed
274
275
276
277
278
279
280
281
    <div class="row">
      <div class="col-lg-6">
        <h4>Linked to components</h4>
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="alert.js">
            Alert dismissal
          </label>
syed's avatar
syed committed
282
        </div>
Mark Otto's avatar
Mark Otto committed
283
284
285
286
287
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="button.js">
            Advanced buttons
          </label>
288
        </div>
Mark Otto's avatar
Mark Otto committed
289
290
291
292
293
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="carousel.js">
            Carousel functionality
          </label>
syed's avatar
syed committed
294
        </div>
Mark Otto's avatar
Mark Otto committed
295
296
297
298
299
300
301
302
303
304
305
306
307
308
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="dropdown.js">
            Dropdowns
          </label>
        </div>
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="modal.js">
            Modals
          </label>
        </div>
        <div class="checkbox">
          <label>
Mark Otto's avatar
Mark Otto committed
309
            <input type="checkbox" checked value="tooltip.js">
Mark Otto's avatar
Mark Otto committed
310
311
312
313
314
            Tooltips
          </label>
        </div>
        <div class="checkbox">
          <label>
315
            <input type="checkbox" checked value="popover.js" data-dependencies="tooltip.js">
Mark Otto's avatar
Mark Otto committed
316
317
318
319
320
321
            Popovers <small>(requires Tooltips)</small>
          </label>
        </div>
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="tab.js">
Chris Rebert's avatar
Chris Rebert committed
322
            Togglable tabs
Mark Otto's avatar
Mark Otto committed
323
          </label>
syed's avatar
syed committed
324
        </div>
Mark Otto's avatar
Mark Otto committed
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
      </div>
      <div class="col-lg-6">
        <h4>Magic</h4>
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="affix.js">
            Affix
          </label>
        </div>
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="collapse.js">
            Collapse
          </label>
        </div>
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="scrollspy.js">
            Scrollspy
          </label>
        </div>
        <div class="checkbox">
          <label>
            <input type="checkbox" checked value="transition.js">
            Transitions <small>(required for any kind of animation)</small>
          </label>
        </div>
      </div>
Mark Otto's avatar
Mark Otto committed
353
    </div>
354

Mark Otto's avatar
Mark Otto committed
355
356
357
358
    <div class="bs-callout bs-callout-info">
      <h4>Produces two files</h4>
      <p>All checked plugins will be compiled into a readable <code>bootstrap.js</code> and a minified <code>bootstrap.min.js</code>. We recommend you use the minified version in production.</p>
    </div>
359

Mark Otto's avatar
Mark Otto committed
360
361
362
363
364
    <div class="bs-callout bs-callout-danger">
      <h4>jQuery required</h4>
      <p>All plugins require the latest version of <a href="http://jquery.com/" target="_blank">jQuery</a> to be included.</p>
    </div>
  </div>
Mark Otto's avatar
Mark Otto committed
365

366
  <div class="bs-docs-section" id="less-variables-section">
367
    <button class="btn btn-default toggle" type="button">Reset to defaults</button>
Quy Ton's avatar
Quy Ton committed
368
    <h1 id="less-variables" class="page-header">Less variables</h1>
369

Quy Ton's avatar
Quy Ton committed
370
    <p class="lead">Customize Less variables to define colors, sizes and more inside your custom CSS stylesheets.</p>
371
    {% include customizer-variables.html %}
Mark Otto's avatar
Mark Otto committed
372
  </div>
Mark Otto's avatar
Mark Otto committed
373

Mark Otto's avatar
Mark Otto committed
374
  <div class="bs-docs-section">
375
376
    <h1 id="download" class="page-header">Download</h1>

Mark Otto's avatar
Mark Otto committed
377
    <p class="lead">Hooray! Your custom version of Bootstrap is now ready to be compiled. Just click the button below to finish the process.</p>
378
379
380
381
382
    <div id="firefox-customizer-alert" class="alert alert-warning alert-dismissible fade in" role="alert">
      <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
      <h4>Warning for Firefox users!</h4>
      <p>Due to a possible browser bug, the customizer download randomly fails in Firefox. If this happens to you, we advise either retrying in Firefox or using one of the other browsers supported by the Customizer (Chrome or IE10+).</p>
    </div>
Mark Otto's avatar
Mark Otto committed
383
    <div class="bs-customize-download">
384
      <button type="submit" id="btn-compile" disabled class="btn btn-block btn-lg btn-outline" onclick="ga('send', 'event', 'Customize', 'Download', 'Customize and Download');">Compile and Download</button>
Mark Otto's avatar
Mark Otto committed
385
386
    </div>
  </div><!-- /download -->
387
</form>