less-rails-bootstrap 3.2.0 → 3.3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/app/assets/fonts/twitter/bootstrap/glyphicons-halflings-regular.svg +1 -1
- data/app/assets/javascripts/twitter/bootstrap/affix.js +43 -23
- data/app/assets/javascripts/twitter/bootstrap/alert.js +6 -4
- data/app/assets/javascripts/twitter/bootstrap/button.js +16 -10
- data/app/assets/javascripts/twitter/bootstrap/carousel.js +26 -10
- data/app/assets/javascripts/twitter/bootstrap/collapse.js +69 -28
- data/app/assets/javascripts/twitter/bootstrap/dropdown.js +20 -10
- data/app/assets/javascripts/twitter/bootstrap/modal.js +22 -21
- data/app/assets/javascripts/twitter/bootstrap/popover.js +13 -7
- data/app/assets/javascripts/twitter/bootstrap/scrollspy.js +12 -7
- data/app/assets/javascripts/twitter/bootstrap/tab.js +41 -16
- data/app/assets/javascripts/twitter/bootstrap/tooltip.js +60 -39
- data/app/assets/javascripts/twitter/bootstrap/transition.js +1 -1
- data/app/frameworks/twitter/bootstrap/button-groups.less +16 -9
- data/app/frameworks/twitter/bootstrap/buttons.less +7 -4
- data/app/frameworks/twitter/bootstrap/carousel.less +24 -0
- data/app/frameworks/twitter/bootstrap/code.less +1 -0
- data/app/frameworks/twitter/bootstrap/component-animations.less +5 -2
- data/app/frameworks/twitter/bootstrap/dropdowns.less +3 -5
- data/app/frameworks/twitter/bootstrap/forms.less +44 -25
- data/app/frameworks/twitter/bootstrap/glyphicons.less +2 -1
- data/app/frameworks/twitter/bootstrap/jumbotron.less +4 -4
- data/app/frameworks/twitter/bootstrap/list-group.less +1 -0
- data/app/frameworks/twitter/bootstrap/media.less +27 -36
- data/app/frameworks/twitter/bootstrap/mixins/buttons.less +2 -0
- data/app/frameworks/twitter/bootstrap/mixins/forms.less +5 -1
- data/app/frameworks/twitter/bootstrap/mixins/image.less +0 -1
- data/app/frameworks/twitter/bootstrap/mixins/labels.less +1 -1
- data/app/frameworks/twitter/bootstrap/mixins/vendor-prefixes.less +6 -3
- data/app/frameworks/twitter/bootstrap/modals.less +2 -3
- data/app/frameworks/twitter/bootstrap/navbar.less +29 -25
- data/app/frameworks/twitter/bootstrap/navs.less +3 -1
- data/app/frameworks/twitter/bootstrap/normalize.less +5 -3
- data/app/frameworks/twitter/bootstrap/pager.less +1 -2
- data/app/frameworks/twitter/bootstrap/pagination.less +1 -1
- data/app/frameworks/twitter/bootstrap/panels.less +21 -3
- data/app/frameworks/twitter/bootstrap/popovers.less +5 -4
- data/app/frameworks/twitter/bootstrap/print.less +102 -96
- data/app/frameworks/twitter/bootstrap/progress-bars.less +1 -19
- data/app/frameworks/twitter/bootstrap/responsive-embed.less +2 -1
- data/app/frameworks/twitter/bootstrap/scaffolding.less +1 -1
- data/app/frameworks/twitter/bootstrap/tables.less +11 -10
- data/app/frameworks/twitter/bootstrap/theme.less +12 -10
- data/app/frameworks/twitter/bootstrap/thumbnails.less +1 -1
- data/app/frameworks/twitter/bootstrap/type.less +0 -11
- data/app/frameworks/twitter/bootstrap/utilities.less +0 -1
- data/app/frameworks/twitter/bootstrap/variables.less +29 -19
- data/lib/less/rails/bootstrap/version.rb +1 -1
- metadata +19 -19
@@ -1,5 +1,5 @@
|
|
1
1
|
/* ========================================================================
|
2
|
-
* Bootstrap: transition.js v3.
|
2
|
+
* Bootstrap: transition.js v3.3.0
|
3
3
|
* http://getbootstrap.com/javascript/#transitions
|
4
4
|
* ========================================================================
|
5
5
|
* Copyright 2011-2014 Twitter, Inc.
|
@@ -198,7 +198,6 @@
|
|
198
198
|
}
|
199
199
|
|
200
200
|
|
201
|
-
|
202
201
|
// Justified button groups
|
203
202
|
// ----------------------
|
204
203
|
|
@@ -226,15 +225,23 @@
|
|
226
225
|
// Checkbox and radio options
|
227
226
|
//
|
228
227
|
// In order to support the browser's form validation feedback, powered by the
|
229
|
-
// `required` attribute, we have to "hide" the inputs via `
|
230
|
-
//
|
228
|
+
// `required` attribute, we have to "hide" the inputs via `clip`. We cannot use
|
229
|
+
// `display: none;` or `visibility: hidden;` as that also hides the popover.
|
230
|
+
// Simply visually hiding the inputs via `opacity` would leave them clickable in
|
231
|
+
// certain cases which is prevented by using `clip` and `pointer-events`.
|
231
232
|
// This way, we ensure a DOM element is visible to position the popover from.
|
232
233
|
//
|
233
|
-
// See https://github.com/twbs/bootstrap/pull/12794
|
234
|
+
// See https://github.com/twbs/bootstrap/pull/12794 and
|
235
|
+
// https://github.com/twbs/bootstrap/pull/14559 for more information.
|
234
236
|
|
235
|
-
[data-toggle="buttons"]
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
237
|
+
[data-toggle="buttons"] {
|
238
|
+
> .btn,
|
239
|
+
> .btn-group > .btn {
|
240
|
+
input[type="radio"],
|
241
|
+
input[type="checkbox"] {
|
242
|
+
position: absolute;
|
243
|
+
clip: rect(0,0,0,0);
|
244
|
+
pointer-events: none;
|
245
|
+
}
|
246
|
+
}
|
240
247
|
}
|
@@ -12,6 +12,7 @@
|
|
12
12
|
font-weight: @btn-font-weight;
|
13
13
|
text-align: center;
|
14
14
|
vertical-align: middle;
|
15
|
+
touch-action: manipulation;
|
15
16
|
cursor: pointer;
|
16
17
|
background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
|
17
18
|
border: 1px solid transparent;
|
@@ -22,13 +23,15 @@
|
|
22
23
|
&,
|
23
24
|
&:active,
|
24
25
|
&.active {
|
25
|
-
&:focus
|
26
|
+
&:focus,
|
27
|
+
&.focus {
|
26
28
|
.tab-focus();
|
27
29
|
}
|
28
30
|
}
|
29
31
|
|
30
32
|
&:hover,
|
31
|
-
&:focus
|
33
|
+
&:focus,
|
34
|
+
&.focus {
|
32
35
|
color: @btn-default-color;
|
33
36
|
text-decoration: none;
|
34
37
|
}
|
@@ -43,7 +46,7 @@
|
|
43
46
|
&.disabled,
|
44
47
|
&[disabled],
|
45
48
|
fieldset[disabled] & {
|
46
|
-
cursor:
|
49
|
+
cursor: @cursor-disabled;
|
47
50
|
pointer-events: none; // Future-proof disabling of clicks
|
48
51
|
.opacity(.65);
|
49
52
|
.box-shadow(none);
|
@@ -85,11 +88,11 @@
|
|
85
88
|
.btn-link {
|
86
89
|
color: @link-color;
|
87
90
|
font-weight: normal;
|
88
|
-
cursor: pointer;
|
89
91
|
border-radius: 0;
|
90
92
|
|
91
93
|
&,
|
92
94
|
&:active,
|
95
|
+
&.active,
|
93
96
|
&[disabled],
|
94
97
|
fieldset[disabled] & {
|
95
98
|
background-color: transparent;
|
@@ -24,6 +24,30 @@
|
|
24
24
|
&:extend(.img-responsive);
|
25
25
|
line-height: 1;
|
26
26
|
}
|
27
|
+
|
28
|
+
// WebKit CSS3 transforms for supported devices
|
29
|
+
@media all and (transform-3d), (-webkit-transform-3d) {
|
30
|
+
transition: transform .6s ease-in-out;
|
31
|
+
backface-visibility: hidden;
|
32
|
+
perspective: 1000;
|
33
|
+
|
34
|
+
&.next,
|
35
|
+
&.active.right {
|
36
|
+
transform: translate3d(100%, 0, 0);
|
37
|
+
left: 0;
|
38
|
+
}
|
39
|
+
&.prev,
|
40
|
+
&.active.left {
|
41
|
+
transform: translate3d(-100%, 0, 0);
|
42
|
+
left: 0;
|
43
|
+
}
|
44
|
+
&.next.left,
|
45
|
+
&.prev.right,
|
46
|
+
&.active {
|
47
|
+
transform: translate3d(0, 0, 0);
|
48
|
+
left: 0;
|
49
|
+
}
|
50
|
+
}
|
27
51
|
}
|
28
52
|
|
29
53
|
> .active,
|
@@ -17,8 +17,9 @@
|
|
17
17
|
|
18
18
|
.collapse {
|
19
19
|
display: none;
|
20
|
+
visibility: hidden;
|
20
21
|
|
21
|
-
&.in { display: block; }
|
22
|
+
&.in { display: block; visibility: visible; }
|
22
23
|
tr&.in { display: table-row; }
|
23
24
|
tbody&.in { display: table-row-group; }
|
24
25
|
}
|
@@ -27,5 +28,7 @@
|
|
27
28
|
position: relative;
|
28
29
|
height: 0;
|
29
30
|
overflow: hidden;
|
30
|
-
.transition(height
|
31
|
+
.transition-property(~"height, visibility");
|
32
|
+
.transition-duration(.35s);
|
33
|
+
.transition-timing-function(ease);
|
31
34
|
}
|
@@ -103,16 +103,15 @@
|
|
103
103
|
&:focus {
|
104
104
|
color: @dropdown-link-disabled-color;
|
105
105
|
}
|
106
|
-
|
107
|
-
// Nuke hover/focus effects
|
108
|
-
.dropdown-menu > .disabled > a {
|
106
|
+
|
107
|
+
// Nuke hover/focus effects
|
109
108
|
&:hover,
|
110
109
|
&:focus {
|
111
110
|
text-decoration: none;
|
112
111
|
background-color: transparent;
|
113
112
|
background-image: none; // Remove CSS gradient
|
114
113
|
.reset-filter();
|
115
|
-
cursor:
|
114
|
+
cursor: @cursor-disabled;
|
116
115
|
}
|
117
116
|
}
|
118
117
|
|
@@ -212,4 +211,3 @@
|
|
212
211
|
}
|
213
212
|
}
|
214
213
|
}
|
215
|
-
|
@@ -141,7 +141,7 @@ output {
|
|
141
141
|
&[disabled],
|
142
142
|
&[readonly],
|
143
143
|
fieldset[disabled] & {
|
144
|
-
cursor:
|
144
|
+
cursor: @cursor-disabled;
|
145
145
|
background-color: @input-bg-disabled;
|
146
146
|
opacity: 1; // iOS fix for unreadable disabled content
|
147
147
|
}
|
@@ -183,9 +183,26 @@ input[type="month"] {
|
|
183
183
|
|
184
184
|
&.input-sm {
|
185
185
|
line-height: @input-height-small;
|
186
|
+
line-height: @line-height-small ~"\0";
|
186
187
|
}
|
187
188
|
&.input-lg {
|
188
189
|
line-height: @input-height-large;
|
190
|
+
line-height: @line-height-large ~"\0";
|
191
|
+
}
|
192
|
+
}
|
193
|
+
|
194
|
+
// IE 11 hack to reverse the iOS temporal input hack.
|
195
|
+
_:-ms-fullscreen, :root input[type="date"],
|
196
|
+
_:-ms-fullscreen, :root input[type="time"],
|
197
|
+
_:-ms-fullscreen, :root input[type="datetime-local"],
|
198
|
+
_:-ms-fullscreen, :root input[type="month"] {
|
199
|
+
line-height: @line-height-base;
|
200
|
+
|
201
|
+
&.input-sm {
|
202
|
+
line-height: @line-height-small;
|
203
|
+
}
|
204
|
+
&.input-lg {
|
205
|
+
line-height: @line-height-large;
|
189
206
|
}
|
190
207
|
}
|
191
208
|
|
@@ -208,11 +225,11 @@ input[type="month"] {
|
|
208
225
|
.checkbox {
|
209
226
|
position: relative;
|
210
227
|
display: block;
|
211
|
-
min-height: @line-height-computed; // clear the floating input if there is no label text
|
212
228
|
margin-top: 10px;
|
213
229
|
margin-bottom: 10px;
|
214
230
|
|
215
231
|
label {
|
232
|
+
min-height: @line-height-computed; // Ensure the input doesn't jump when there is no text
|
216
233
|
padding-left: 20px;
|
217
234
|
margin-bottom: 0;
|
218
235
|
font-weight: normal;
|
@@ -258,7 +275,7 @@ input[type="checkbox"] {
|
|
258
275
|
&[disabled],
|
259
276
|
&.disabled,
|
260
277
|
fieldset[disabled] & {
|
261
|
-
cursor:
|
278
|
+
cursor: @cursor-disabled;
|
262
279
|
}
|
263
280
|
}
|
264
281
|
// These classes are used directly on <label>s
|
@@ -266,7 +283,7 @@ input[type="checkbox"] {
|
|
266
283
|
.checkbox-inline {
|
267
284
|
&.disabled,
|
268
285
|
fieldset[disabled] & {
|
269
|
-
cursor:
|
286
|
+
cursor: @cursor-disabled;
|
270
287
|
}
|
271
288
|
}
|
272
289
|
// These classes are used on elements with <label> descendants
|
@@ -275,7 +292,7 @@ input[type="checkbox"] {
|
|
275
292
|
&.disabled,
|
276
293
|
fieldset[disabled] & {
|
277
294
|
label {
|
278
|
-
cursor:
|
295
|
+
cursor: @cursor-disabled;
|
279
296
|
}
|
280
297
|
}
|
281
298
|
}
|
@@ -306,12 +323,14 @@ input[type="checkbox"] {
|
|
306
323
|
// Build on `.form-control` with modifier classes to decrease or increase the
|
307
324
|
// height and font-size of form controls.
|
308
325
|
|
309
|
-
.input-sm
|
310
|
-
|
326
|
+
.input-sm,
|
327
|
+
.form-group-sm .form-control {
|
328
|
+
.input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @input-border-radius-small);
|
311
329
|
}
|
312
330
|
|
313
|
-
.input-lg
|
314
|
-
|
331
|
+
.input-lg,
|
332
|
+
.form-group-lg .form-control {
|
333
|
+
.input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @input-border-radius-large);
|
315
334
|
}
|
316
335
|
|
317
336
|
|
@@ -331,7 +350,7 @@ input[type="checkbox"] {
|
|
331
350
|
// Feedback icon (requires .glyphicon classes)
|
332
351
|
.form-control-feedback {
|
333
352
|
position: absolute;
|
334
|
-
top:
|
353
|
+
top: 0;
|
335
354
|
right: 0;
|
336
355
|
z-index: 2; // Ensure icon is above input groups
|
337
356
|
display: block;
|
@@ -339,6 +358,7 @@ input[type="checkbox"] {
|
|
339
358
|
height: @input-height-base;
|
340
359
|
line-height: @input-height-base;
|
341
360
|
text-align: center;
|
361
|
+
pointer-events: none;
|
342
362
|
}
|
343
363
|
.input-lg + .form-control-feedback {
|
344
364
|
width: @input-height-large;
|
@@ -362,10 +382,15 @@ input[type="checkbox"] {
|
|
362
382
|
.form-control-validation(@state-danger-text; @state-danger-text; @state-danger-bg);
|
363
383
|
}
|
364
384
|
|
385
|
+
// Reposition feedback icon if input has visible label above
|
386
|
+
.has-feedback label {
|
365
387
|
|
366
|
-
|
367
|
-
|
368
|
-
|
388
|
+
& ~ .form-control-feedback {
|
389
|
+
top: (@line-height-computed + 5); // Height of the `label` and its margin
|
390
|
+
}
|
391
|
+
&.sr-only ~ .form-control-feedback {
|
392
|
+
top: 0;
|
393
|
+
}
|
369
394
|
}
|
370
395
|
|
371
396
|
|
@@ -382,7 +407,6 @@ input[type="checkbox"] {
|
|
382
407
|
}
|
383
408
|
|
384
409
|
|
385
|
-
|
386
410
|
// Inline forms
|
387
411
|
//
|
388
412
|
// Make forms appear inline(-block) by adding the `.form-inline` class. Inline
|
@@ -412,6 +436,11 @@ input[type="checkbox"] {
|
|
412
436
|
vertical-align: middle;
|
413
437
|
}
|
414
438
|
|
439
|
+
// Make static controls behave like regular ones
|
440
|
+
.form-control-static {
|
441
|
+
display: inline-block;
|
442
|
+
}
|
443
|
+
|
415
444
|
.input-group {
|
416
445
|
display: inline-table;
|
417
446
|
vertical-align: middle;
|
@@ -453,10 +482,7 @@ input[type="checkbox"] {
|
|
453
482
|
margin-left: 0;
|
454
483
|
}
|
455
484
|
|
456
|
-
//
|
457
|
-
//
|
458
|
-
// Reposition the icon because it's now within a grid column and columns have
|
459
|
-
// `position: relative;` on them. Also accounts for the grid gutter padding.
|
485
|
+
// Re-override the feedback icon.
|
460
486
|
.has-feedback .form-control-feedback {
|
461
487
|
top: 0;
|
462
488
|
}
|
@@ -509,7 +535,6 @@ input[type="checkbox"] {
|
|
509
535
|
// Reposition the icon because it's now within a grid column and columns have
|
510
536
|
// `position: relative;` on them. Also accounts for the grid gutter padding.
|
511
537
|
.has-feedback .form-control-feedback {
|
512
|
-
top: 0;
|
513
538
|
right: (@grid-gutter-width / 2);
|
514
539
|
}
|
515
540
|
|
@@ -523,9 +548,6 @@ input[type="checkbox"] {
|
|
523
548
|
padding-top: ((@padding-large-vertical * @line-height-large) + 1);
|
524
549
|
}
|
525
550
|
}
|
526
|
-
.form-control {
|
527
|
-
&:extend(.input-lg);
|
528
|
-
}
|
529
551
|
}
|
530
552
|
.form-group-sm {
|
531
553
|
@media (min-width: @screen-sm-min) {
|
@@ -533,8 +555,5 @@ input[type="checkbox"] {
|
|
533
555
|
padding-top: (@padding-small-vertical + 1);
|
534
556
|
}
|
535
557
|
}
|
536
|
-
.form-control {
|
537
|
-
&:extend(.input-sm);
|
538
|
-
}
|
539
558
|
}
|
540
559
|
}
|
@@ -33,7 +33,8 @@
|
|
33
33
|
// Individual icons
|
34
34
|
.glyphicon-asterisk { &:before { content: "\2a"; } }
|
35
35
|
.glyphicon-plus { &:before { content: "\2b"; } }
|
36
|
-
.glyphicon-euro
|
36
|
+
.glyphicon-euro,
|
37
|
+
.glyphicon-eur { &:before { content: "\20ac"; } }
|
37
38
|
.glyphicon-minus { &:before { content: "\2212"; } }
|
38
39
|
.glyphicon-cloud { &:before { content: "\2601"; } }
|
39
40
|
.glyphicon-envelope { &:before { content: "\2709"; } }
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
|
6
6
|
.jumbotron {
|
7
|
-
padding: @jumbotron-padding;
|
7
|
+
padding: @jumbotron-padding (@jumbotron-padding / 2);
|
8
8
|
margin-bottom: @jumbotron-padding;
|
9
9
|
color: @jumbotron-color;
|
10
10
|
background-color: @jumbotron-bg;
|
@@ -23,7 +23,8 @@
|
|
23
23
|
border-top-color: darken(@jumbotron-bg, 10%);
|
24
24
|
}
|
25
25
|
|
26
|
-
.container
|
26
|
+
.container &,
|
27
|
+
.container-fluid & {
|
27
28
|
border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container
|
28
29
|
}
|
29
30
|
|
@@ -32,8 +33,7 @@
|
|
32
33
|
}
|
33
34
|
|
34
35
|
@media screen and (min-width: @screen-sm-min) {
|
35
|
-
padding
|
36
|
-
padding-bottom: (@jumbotron-padding * 1.6);
|
36
|
+
padding: (@jumbotron-padding * 1.6) 0;
|
37
37
|
|
38
38
|
.container & {
|
39
39
|
padding-left: (@jumbotron-padding * 2);
|
@@ -1,54 +1,45 @@
|
|
1
|
-
|
2
|
-
//
|
3
|
-
|
1
|
+
.media {
|
2
|
+
// Proper spacing between instances of .media
|
3
|
+
margin-top: 15px;
|
4
|
+
|
5
|
+
&:first-child {
|
6
|
+
margin-top: 0;
|
7
|
+
}
|
8
|
+
}
|
4
9
|
|
10
|
+
.media-right,
|
11
|
+
.media > .pull-right {
|
12
|
+
padding-left: 10px;
|
13
|
+
}
|
5
14
|
|
6
|
-
|
7
|
-
|
15
|
+
.media-left,
|
16
|
+
.media > .pull-left {
|
17
|
+
padding-right: 10px;
|
18
|
+
}
|
8
19
|
|
9
|
-
|
10
|
-
.media,
|
20
|
+
.media-left,
|
21
|
+
.media-right,
|
11
22
|
.media-body {
|
12
|
-
|
13
|
-
|
23
|
+
display: table-cell;
|
24
|
+
vertical-align: top;
|
14
25
|
}
|
15
26
|
|
16
|
-
|
17
|
-
|
18
|
-
.media .media {
|
19
|
-
margin-top: 15px;
|
20
|
-
}
|
21
|
-
.media:first-child {
|
22
|
-
margin-top: 0;
|
27
|
+
.media-middle {
|
28
|
+
vertical-align: middle;
|
23
29
|
}
|
24
30
|
|
25
|
-
|
26
|
-
|
27
|
-
display: block;
|
31
|
+
.media-bottom {
|
32
|
+
vertical-align: bottom;
|
28
33
|
}
|
29
34
|
|
30
35
|
// Reset margins on headings for tighter default spacing
|
31
36
|
.media-heading {
|
32
|
-
margin: 0
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
// Media image alignment
|
37
|
-
// -------------------------
|
38
|
-
|
39
|
-
.media {
|
40
|
-
> .pull-left {
|
41
|
-
margin-right: 10px;
|
42
|
-
}
|
43
|
-
> .pull-right {
|
44
|
-
margin-left: 10px;
|
45
|
-
}
|
37
|
+
margin-top: 0;
|
38
|
+
margin-bottom: 5px;
|
46
39
|
}
|
47
40
|
|
48
|
-
|
49
41
|
// Media list variation
|
50
|
-
//
|
51
|
-
|
42
|
+
//
|
52
43
|
// Undo default ul/ol styles
|
53
44
|
.media-list {
|
54
45
|
padding-left: 0;
|