less-rails-bootstrap 2.0.10 → 2.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG.md +5 -0
- data/lib/less/rails/bootstrap/version.rb +1 -1
- data/scripts/update_bootstrap.sh +33 -0
- data/test/cases/usage_css_spec.rb +2 -2
- data/vendor/assets/images/twitter/bootstrap/glyphicons-halflings-white.png +0 -0
- data/vendor/assets/images/twitter/bootstrap/glyphicons-halflings.png +0 -0
- data/vendor/assets/javascripts/twitter/bootstrap/alert.js +28 -32
- data/vendor/assets/javascripts/twitter/bootstrap/button.js +29 -33
- data/vendor/assets/javascripts/twitter/bootstrap/carousel.js +27 -19
- data/vendor/assets/javascripts/twitter/bootstrap/collapse.js +44 -25
- data/vendor/assets/javascripts/twitter/bootstrap/dropdown.js +18 -10
- data/vendor/assets/javascripts/twitter/bootstrap/modal.js +25 -17
- data/vendor/assets/javascripts/twitter/bootstrap/popover.js +13 -10
- data/vendor/assets/javascripts/twitter/bootstrap/scrollspy.js +43 -17
- data/vendor/assets/javascripts/twitter/bootstrap/tab.js +12 -7
- data/vendor/assets/javascripts/twitter/bootstrap/tooltip.js +40 -35
- data/vendor/assets/javascripts/twitter/bootstrap/transition.js +30 -20
- data/vendor/assets/javascripts/twitter/bootstrap/typeahead.js +25 -11
- data/vendor/frameworks/twitter/bootstrap/accordion.less +5 -0
- data/vendor/frameworks/twitter/bootstrap/bootstrap.less +2 -3
- data/vendor/frameworks/twitter/bootstrap/button-groups.less +55 -36
- data/vendor/frameworks/twitter/bootstrap/buttons.less +15 -11
- data/vendor/frameworks/twitter/bootstrap/close.less +12 -1
- data/vendor/frameworks/twitter/bootstrap/code.less +5 -5
- data/vendor/frameworks/twitter/bootstrap/component-animations.less +4 -4
- data/vendor/frameworks/twitter/bootstrap/dropdowns.less +15 -20
- data/vendor/frameworks/twitter/bootstrap/forms.less +58 -29
- data/vendor/frameworks/twitter/bootstrap/grid.less +1 -1
- data/vendor/frameworks/twitter/bootstrap/labels-badges.less +55 -0
- data/vendor/frameworks/twitter/bootstrap/layouts.less +2 -2
- data/vendor/frameworks/twitter/bootstrap/mixins.less +53 -36
- data/vendor/frameworks/twitter/bootstrap/modals.less +1 -1
- data/vendor/frameworks/twitter/bootstrap/navbar.less +65 -42
- data/vendor/frameworks/twitter/bootstrap/navs.less +36 -36
- data/vendor/frameworks/twitter/bootstrap/pager.less +1 -1
- data/vendor/frameworks/twitter/bootstrap/progress-bars.less +14 -6
- data/vendor/frameworks/twitter/bootstrap/reset.less +3 -3
- data/vendor/frameworks/twitter/bootstrap/responsive-1200px-min.less +23 -0
- data/vendor/frameworks/twitter/bootstrap/responsive-767px-max.less +149 -0
- data/vendor/frameworks/twitter/bootstrap/responsive-768px-979px.less +15 -0
- data/vendor/frameworks/twitter/bootstrap/responsive-navbar.less +146 -0
- data/vendor/frameworks/twitter/bootstrap/responsive-utilities.less +41 -0
- data/vendor/frameworks/twitter/bootstrap/responsive.less +14 -337
- data/vendor/frameworks/twitter/bootstrap/sprites.less +41 -8
- data/vendor/frameworks/twitter/bootstrap/tables.less +22 -5
- data/vendor/frameworks/twitter/bootstrap/thumbnails.less +11 -2
- data/vendor/frameworks/twitter/bootstrap/type.less +7 -6
- data/vendor/frameworks/twitter/bootstrap/variables.less +12 -8
- metadata +11 -4
@@ -27,14 +27,14 @@ pre {
|
|
27
27
|
margin: 0 0 @baseLineHeight / 2;
|
28
28
|
font-size: @baseFontSize * .925; // 13px to 12px
|
29
29
|
line-height: @baseLineHeight;
|
30
|
+
word-break: break-all;
|
31
|
+
word-wrap: break-word;
|
32
|
+
white-space: pre;
|
33
|
+
white-space: pre-wrap;
|
30
34
|
background-color: #f5f5f5;
|
31
35
|
border: 1px solid #ccc; // fallback for IE7-8
|
32
36
|
border: 1px solid rgba(0,0,0,.15);
|
33
37
|
.border-radius(4px);
|
34
|
-
white-space: pre;
|
35
|
-
white-space: pre-wrap;
|
36
|
-
word-break: break-all;
|
37
|
-
word-wrap: break-word;
|
38
38
|
|
39
39
|
// Make prettyprint styles more spaced out for readability
|
40
40
|
&.prettyprint {
|
@@ -54,4 +54,4 @@ pre {
|
|
54
54
|
.pre-scrollable {
|
55
55
|
max-height: 340px;
|
56
56
|
overflow-y: scroll;
|
57
|
-
}
|
57
|
+
}
|
@@ -2,19 +2,19 @@
|
|
2
2
|
// --------------------
|
3
3
|
|
4
4
|
.fade {
|
5
|
-
.transition(opacity .15s linear);
|
6
5
|
opacity: 0;
|
6
|
+
.transition(opacity .15s linear);
|
7
7
|
&.in {
|
8
8
|
opacity: 1;
|
9
9
|
}
|
10
10
|
}
|
11
11
|
|
12
12
|
.collapse {
|
13
|
-
.transition(height .35s ease);
|
14
13
|
position:relative;
|
15
|
-
overflow:hidden;
|
16
14
|
height: 0;
|
15
|
+
overflow:hidden;
|
16
|
+
.transition(height .35s ease);
|
17
17
|
&.in {
|
18
18
|
height: auto;
|
19
19
|
}
|
20
|
-
}
|
20
|
+
}
|
@@ -2,6 +2,7 @@
|
|
2
2
|
// --------------
|
3
3
|
|
4
4
|
// Use the .menu class on any <li> element within the topbar or ul.tabs and you'll get some superfancy dropdowns
|
5
|
+
.dropup,
|
5
6
|
.dropdown {
|
6
7
|
position: relative;
|
7
8
|
}
|
@@ -21,11 +22,11 @@
|
|
21
22
|
width: 0;
|
22
23
|
height: 0;
|
23
24
|
vertical-align: top;
|
24
|
-
border-left: 4px solid transparent;
|
25
|
-
border-right: 4px solid transparent;
|
26
25
|
border-top: 4px solid @black;
|
27
|
-
|
26
|
+
border-right: 4px solid transparent;
|
27
|
+
border-left: 4px solid transparent;
|
28
28
|
content: "";
|
29
|
+
.opacity(30);
|
29
30
|
}
|
30
31
|
|
31
32
|
// Place the caret
|
@@ -34,7 +35,7 @@
|
|
34
35
|
margin-left: 2px;
|
35
36
|
}
|
36
37
|
.dropdown:hover .caret,
|
37
|
-
.open
|
38
|
+
.open .caret {
|
38
39
|
.opacity(100);
|
39
40
|
}
|
40
41
|
|
@@ -45,24 +46,22 @@
|
|
45
46
|
top: 100%;
|
46
47
|
left: 0;
|
47
48
|
z-index: @zindexDropdown;
|
48
|
-
float: left;
|
49
49
|
display: none; // none by default, but block on "open" of the menu
|
50
|
+
float: left;
|
50
51
|
min-width: 160px;
|
51
52
|
padding: 4px 0;
|
52
|
-
margin: 0; // override default ul
|
53
|
+
margin: 1px 0 0; // override default ul
|
53
54
|
list-style: none;
|
54
55
|
background-color: @dropdownBackground;
|
55
|
-
border
|
56
|
-
border
|
57
|
-
border-
|
58
|
-
border-width:
|
59
|
-
.border-radius(
|
56
|
+
border: 1px solid #ccc;
|
57
|
+
border: 1px solid rgba(0,0,0,.2);
|
58
|
+
*border-right-width: 2px;
|
59
|
+
*border-bottom-width: 2px;
|
60
|
+
.border-radius(5px);
|
60
61
|
.box-shadow(0 5px 10px rgba(0,0,0,.2));
|
61
62
|
-webkit-background-clip: padding-box;
|
62
63
|
-moz-background-clip: padding;
|
63
64
|
background-clip: padding-box;
|
64
|
-
*border-right-width: 2px;
|
65
|
-
*border-bottom-width: 2px;
|
66
65
|
|
67
66
|
// Aligns the dropdown menu to right
|
68
67
|
&.pull-right {
|
@@ -99,25 +98,21 @@
|
|
99
98
|
|
100
99
|
// Open state for the dropdown
|
101
100
|
// ---------------------------
|
102
|
-
.
|
101
|
+
.open {
|
103
102
|
// IE7's z-index only goes to the nearest positioned ancestor, which would
|
104
103
|
// make the menu appear below buttons that appeared later on the page
|
105
104
|
*z-index: @zindexDropdown;
|
106
105
|
|
107
|
-
.dropdown-toggle {
|
108
|
-
color: @white;
|
109
|
-
background: #ccc;
|
110
|
-
background: rgba(0,0,0,.3);
|
111
|
-
}
|
112
106
|
.dropdown-menu {
|
113
107
|
display: block;
|
114
108
|
}
|
115
109
|
}
|
116
110
|
|
117
111
|
// Right aligned dropdowns
|
112
|
+
// ---------------------------
|
118
113
|
.pull-right .dropdown-menu {
|
119
|
-
left: auto;
|
120
114
|
right: 0;
|
115
|
+
left: auto;
|
121
116
|
}
|
122
117
|
|
123
118
|
// Allow for dropdowns to go bottom up (aka, dropup-menu)
|
@@ -71,8 +71,9 @@ select,
|
|
71
71
|
font-size: @baseFontSize;
|
72
72
|
line-height: @baseLineHeight;
|
73
73
|
color: @gray;
|
74
|
+
background-color: @inputBackground;
|
74
75
|
border: 1px solid @inputBorder;
|
75
|
-
.border-radius(
|
76
|
+
.border-radius(@inputBorderRadius);
|
76
77
|
}
|
77
78
|
.uneditable-textarea {
|
78
79
|
width: auto;
|
@@ -97,8 +98,9 @@ input[type="radio"] {
|
|
97
98
|
*margin-top: 0; /* IE7 */
|
98
99
|
line-height: normal;
|
99
100
|
cursor: pointer;
|
100
|
-
|
101
|
+
background-color: transparent;
|
101
102
|
border: 0 \9; /* IE9 and down */
|
103
|
+
.border-radius(0);
|
102
104
|
}
|
103
105
|
input[type="image"] {
|
104
106
|
border: 0;
|
@@ -109,9 +111,9 @@ input[type="file"] {
|
|
109
111
|
width: auto;
|
110
112
|
padding: initial;
|
111
113
|
line-height: initial;
|
112
|
-
border: initial;
|
113
114
|
background-color: @inputBackground;
|
114
115
|
background-color: initial;
|
116
|
+
border: initial;
|
115
117
|
.box-shadow(none);
|
116
118
|
}
|
117
119
|
|
@@ -171,6 +173,7 @@ input[type="hidden"] {
|
|
171
173
|
// Indent the labels to position radios/checkboxes as hanging
|
172
174
|
.radio,
|
173
175
|
.checkbox {
|
176
|
+
min-height: 18px; // clear the floating input if there is no label text
|
174
177
|
padding-left: 18px;
|
175
178
|
}
|
176
179
|
.radio input[type="radio"],
|
@@ -213,17 +216,16 @@ textarea {
|
|
213
216
|
input:focus,
|
214
217
|
textarea:focus {
|
215
218
|
border-color: rgba(82,168,236,.8);
|
216
|
-
@shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
|
217
|
-
.box-shadow(@shadow);
|
218
219
|
outline: 0;
|
219
220
|
outline: thin dotted \9; /* IE6-9 */
|
221
|
+
.box-shadow(~"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6)");
|
220
222
|
}
|
221
223
|
input[type="file"]:focus,
|
222
224
|
input[type="radio"]:focus,
|
223
225
|
input[type="checkbox"]:focus,
|
224
226
|
select:focus {
|
225
|
-
.box-shadow(none); // override for file inputs
|
226
227
|
.tab-focus();
|
228
|
+
.box-shadow(none); // override for file inputs
|
227
229
|
}
|
228
230
|
|
229
231
|
|
@@ -243,7 +245,12 @@ select:focus {
|
|
243
245
|
input[class*="span"],
|
244
246
|
select[class*="span"],
|
245
247
|
textarea[class*="span"],
|
246
|
-
.uneditable-input
|
248
|
+
.uneditable-input[class*="span"],
|
249
|
+
// Redeclare since the fluid row class is more specific
|
250
|
+
.row-fluid input[class*="span"],
|
251
|
+
.row-fluid select[class*="span"],
|
252
|
+
.row-fluid textarea[class*="span"],
|
253
|
+
.row-fluid .uneditable-input[class*="span"] {
|
247
254
|
float: none;
|
248
255
|
margin-left: 0;
|
249
256
|
}
|
@@ -268,9 +275,16 @@ textarea[disabled],
|
|
268
275
|
input[readonly],
|
269
276
|
select[readonly],
|
270
277
|
textarea[readonly] {
|
278
|
+
cursor: not-allowed;
|
271
279
|
background-color: @inputDisabledBackground;
|
272
280
|
border-color: #ddd;
|
273
|
-
|
281
|
+
}
|
282
|
+
// Explicitly reset the colors here
|
283
|
+
input[type="radio"][disabled],
|
284
|
+
input[type="checkbox"][disabled],
|
285
|
+
input[type="radio"][readonly],
|
286
|
+
input[type="checkbox"][readonly] {
|
287
|
+
background-color: transparent;
|
274
288
|
}
|
275
289
|
|
276
290
|
|
@@ -314,18 +328,19 @@ select:focus:required:invalid {
|
|
314
328
|
padding: (@baseLineHeight - 1) 20px @baseLineHeight;
|
315
329
|
margin-top: @baseLineHeight;
|
316
330
|
margin-bottom: @baseLineHeight;
|
317
|
-
background-color: @
|
331
|
+
background-color: @formActionsBackground;
|
318
332
|
border-top: 1px solid #ddd;
|
319
333
|
.clearfix(); // Adding clearfix to allow for .pull-right button containers
|
320
334
|
}
|
321
335
|
|
322
336
|
// For text that needs to appear as an input but should not be an input
|
323
337
|
.uneditable-input {
|
324
|
-
|
338
|
+
overflow: hidden; // prevent text from wrapping, but still cut it off like an input does
|
339
|
+
white-space: nowrap;
|
340
|
+
cursor: not-allowed;
|
325
341
|
background-color: @inputBackground;
|
326
342
|
border-color: #eee;
|
327
343
|
.box-shadow(inset 0 1px 2px rgba(0,0,0,.025));
|
328
|
-
cursor: not-allowed;
|
329
344
|
}
|
330
345
|
|
331
346
|
// Placeholder text gets special styles; can't be bundled together though for some reason
|
@@ -365,10 +380,13 @@ select:focus:required:invalid {
|
|
365
380
|
input,
|
366
381
|
select,
|
367
382
|
.uneditable-input {
|
383
|
+
position: relative; // placed here by default so that on :focus we can place the input above the .add-on for full border and box-shadow goodness
|
384
|
+
margin-bottom: 0; // prevent bottom margin from screwing up alignment in stacked forms
|
368
385
|
*margin-left: 0;
|
369
|
-
|
386
|
+
vertical-align: middle;
|
387
|
+
.border-radius(0 @inputBorderRadius @inputBorderRadius 0);
|
388
|
+
// Make input on top when focused so blue border and shadow always show
|
370
389
|
&:focus {
|
371
|
-
position: relative;
|
372
390
|
z-index: 2;
|
373
391
|
}
|
374
392
|
}
|
@@ -378,8 +396,8 @@ select:focus:required:invalid {
|
|
378
396
|
.add-on {
|
379
397
|
display: inline-block;
|
380
398
|
width: auto;
|
381
|
-
min-width: 16px;
|
382
399
|
height: @baseLineHeight;
|
400
|
+
min-width: 16px;
|
383
401
|
padding: 4px 5px;
|
384
402
|
font-weight: normal;
|
385
403
|
line-height: @baseLineHeight;
|
@@ -391,7 +409,8 @@ select:focus:required:invalid {
|
|
391
409
|
}
|
392
410
|
.add-on,
|
393
411
|
.btn {
|
394
|
-
|
412
|
+
margin-left: -1px;
|
413
|
+
.border-radius(0);
|
395
414
|
}
|
396
415
|
.active {
|
397
416
|
background-color: lighten(@green, 30);
|
@@ -403,21 +422,24 @@ select:focus:required:invalid {
|
|
403
422
|
.btn {
|
404
423
|
margin-right: -1px;
|
405
424
|
}
|
425
|
+
.add-on:first-child,
|
426
|
+
.btn:first-child {
|
427
|
+
.border-radius(@inputBorderRadius 0 0 @inputBorderRadius);
|
428
|
+
}
|
406
429
|
}
|
407
430
|
.input-append {
|
408
431
|
input,
|
409
|
-
select
|
432
|
+
select,
|
410
433
|
.uneditable-input {
|
411
|
-
.border-radius(
|
434
|
+
.border-radius(@inputBorderRadius 0 0 @inputBorderRadius);
|
412
435
|
}
|
413
436
|
.uneditable-input {
|
414
|
-
border-left-color: #eee;
|
415
437
|
border-right-color: #ccc;
|
438
|
+
border-left-color: #eee;
|
416
439
|
}
|
417
|
-
.add-on,
|
418
|
-
.btn {
|
419
|
-
|
420
|
-
.border-radius(0 3px 3px 0);
|
440
|
+
.add-on:last-child,
|
441
|
+
.btn:last-child {
|
442
|
+
.border-radius(0 @inputBorderRadius @inputBorderRadius 0);
|
421
443
|
}
|
422
444
|
}
|
423
445
|
// Remove all border-radius for inputs with both prepend and append
|
@@ -430,12 +452,12 @@ select:focus:required:invalid {
|
|
430
452
|
.add-on:first-child,
|
431
453
|
.btn:first-child {
|
432
454
|
margin-right: -1px;
|
433
|
-
.border-radius(
|
455
|
+
.border-radius(@inputBorderRadius 0 0 @inputBorderRadius);
|
434
456
|
}
|
435
457
|
.add-on:last-child,
|
436
458
|
.btn:last-child {
|
437
459
|
margin-left: -1px;
|
438
|
-
.border-radius(0
|
460
|
+
.border-radius(0 @inputBorderRadius @inputBorderRadius 0);
|
439
461
|
}
|
440
462
|
}
|
441
463
|
|
@@ -445,8 +467,10 @@ select:focus:required:invalid {
|
|
445
467
|
// -----------
|
446
468
|
|
447
469
|
.search-query {
|
448
|
-
padding-left: 14px;
|
449
470
|
padding-right: 14px;
|
471
|
+
padding-right: 4px \9;
|
472
|
+
padding-left: 14px;
|
473
|
+
padding-left: 4px \9; /* IE7-8 doesn't have border-radius, so don't indent the padding */
|
450
474
|
margin-bottom: 0; // remove the default margin on all inputs
|
451
475
|
.border-radius(14px);
|
452
476
|
}
|
@@ -470,6 +494,7 @@ select:focus:required:invalid {
|
|
470
494
|
.input-prepend,
|
471
495
|
.input-append {
|
472
496
|
display: inline-block;
|
497
|
+
.ie7-inline-block();
|
473
498
|
margin-bottom: 0;
|
474
499
|
}
|
475
500
|
// Re-hide hidden elements due to specifity
|
@@ -503,8 +528,8 @@ select:focus:required:invalid {
|
|
503
528
|
.form-inline .radio input[type="radio"],
|
504
529
|
.form-inline .checkbox input[type="checkbox"] {
|
505
530
|
float: left;
|
506
|
-
margin-left: 0;
|
507
531
|
margin-right: 3px;
|
532
|
+
margin-left: 0;
|
508
533
|
}
|
509
534
|
|
510
535
|
|
@@ -537,11 +562,15 @@ legend + .control-group {
|
|
537
562
|
}
|
538
563
|
// Move over all input controls and content
|
539
564
|
.controls {
|
540
|
-
|
541
|
-
|
565
|
+
// Super jank IE7 fix to ensure the inputs in .input-append and input-prepend
|
566
|
+
// don't inherit the margin of the parent, in this case .controls
|
542
567
|
*display: inline-block;
|
543
|
-
*margin-left: 0;
|
544
568
|
*padding-left: 20px;
|
569
|
+
margin-left: 160px;
|
570
|
+
*margin-left: 0;
|
571
|
+
&:first-child {
|
572
|
+
*padding-left: 160px;
|
573
|
+
}
|
545
574
|
}
|
546
575
|
// Remove bottom margin on block level help text since that's accounted for on .control-group
|
547
576
|
.help-block {
|
@@ -0,0 +1,55 @@
|
|
1
|
+
// LABELS & BADGES
|
2
|
+
// ---------------
|
3
|
+
|
4
|
+
// Base classes
|
5
|
+
.label,
|
6
|
+
.badge {
|
7
|
+
font-size: @baseFontSize * .846;
|
8
|
+
font-weight: bold;
|
9
|
+
line-height: 14px; // ensure proper line-height if floated
|
10
|
+
color: @white;
|
11
|
+
vertical-align: baseline;
|
12
|
+
white-space: nowrap;
|
13
|
+
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
|
14
|
+
background-color: @grayLight;
|
15
|
+
}
|
16
|
+
// Set unique padding and border-radii
|
17
|
+
.label {
|
18
|
+
padding: 1px 4px 2px;
|
19
|
+
.border-radius(3px);
|
20
|
+
}
|
21
|
+
.badge {
|
22
|
+
padding: 1px 9px 2px;
|
23
|
+
.border-radius(9px);
|
24
|
+
}
|
25
|
+
|
26
|
+
// Hover state, but only for links
|
27
|
+
a {
|
28
|
+
&.label:hover,
|
29
|
+
&.badge:hover {
|
30
|
+
color: @white;
|
31
|
+
text-decoration: none;
|
32
|
+
cursor: pointer;
|
33
|
+
}
|
34
|
+
}
|
35
|
+
|
36
|
+
// Colors
|
37
|
+
// Only give background-color difference to links (and to simplify, we don't qualifty with `a` but [href] attribute)
|
38
|
+
.label,
|
39
|
+
.badge {
|
40
|
+
// Important (red)
|
41
|
+
&-important { background-color: @errorText; }
|
42
|
+
&-important[href] { background-color: darken(@errorText, 10%); }
|
43
|
+
// Warnings (orange)
|
44
|
+
&-warning { background-color: @orange; }
|
45
|
+
&-warning[href] { background-color: darken(@orange, 10%); }
|
46
|
+
// Success (green)
|
47
|
+
&-success { background-color: @successText; }
|
48
|
+
&-success[href] { background-color: darken(@successText, 10%); }
|
49
|
+
// Info (turquoise)
|
50
|
+
&-info { background-color: @infoText; }
|
51
|
+
&-info[href] { background-color: darken(@infoText, 10%); }
|
52
|
+
// Inverse (black)
|
53
|
+
&-inverse { background-color: @grayDark; }
|
54
|
+
&-inverse[href] { background-color: darken(@grayDark, 10%); }
|
55
|
+
}
|