less-rails-bootstrap 2.0.6 → 2.0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. data/CHANGELOG.md +5 -0
  2. data/README.md +3 -35
  3. data/lib/less/rails/bootstrap/version.rb +1 -1
  4. data/vendor/assets/javascripts/twitter/bootstrap/alert.js +1 -1
  5. data/vendor/assets/javascripts/twitter/bootstrap/button.js +4 -2
  6. data/vendor/assets/javascripts/twitter/bootstrap/carousel.js +7 -3
  7. data/vendor/assets/javascripts/twitter/bootstrap/collapse.js +4 -2
  8. data/vendor/assets/javascripts/twitter/bootstrap/dropdown.js +1 -1
  9. data/vendor/assets/javascripts/twitter/bootstrap/modal.js +1 -1
  10. data/vendor/assets/javascripts/twitter/bootstrap/popover.js +1 -1
  11. data/vendor/assets/javascripts/twitter/bootstrap/scrollspy.js +1 -1
  12. data/vendor/assets/javascripts/twitter/bootstrap/tab.js +1 -1
  13. data/vendor/assets/javascripts/twitter/bootstrap/tooltip.js +2 -2
  14. data/vendor/assets/javascripts/twitter/bootstrap/transition.js +1 -1
  15. data/vendor/assets/javascripts/twitter/bootstrap/typeahead.js +7 -7
  16. data/vendor/frameworks/twitter/bootstrap/alerts.less +2 -14
  17. data/vendor/frameworks/twitter/bootstrap/badges.less +36 -0
  18. data/vendor/frameworks/twitter/bootstrap/bootstrap.less +2 -1
  19. data/vendor/frameworks/twitter/bootstrap/breadcrumbs.less +2 -0
  20. data/vendor/frameworks/twitter/bootstrap/button-groups.less +31 -7
  21. data/vendor/frameworks/twitter/bootstrap/buttons.less +17 -13
  22. data/vendor/frameworks/twitter/bootstrap/code.less +2 -2
  23. data/vendor/frameworks/twitter/bootstrap/component-animations.less +4 -2
  24. data/vendor/frameworks/twitter/bootstrap/dropdowns.less +45 -27
  25. data/vendor/frameworks/twitter/bootstrap/forms.less +78 -45
  26. data/vendor/frameworks/twitter/bootstrap/grid.less +2 -5
  27. data/vendor/frameworks/twitter/bootstrap/hero-unit.less +3 -1
  28. data/vendor/frameworks/twitter/bootstrap/labels.less +8 -2
  29. data/vendor/frameworks/twitter/bootstrap/mixins.less +189 -165
  30. data/vendor/frameworks/twitter/bootstrap/modals.less +12 -5
  31. data/vendor/frameworks/twitter/bootstrap/navbar.less +77 -35
  32. data/vendor/frameworks/twitter/bootstrap/navs.less +19 -9
  33. data/vendor/frameworks/twitter/bootstrap/pager.less +6 -0
  34. data/vendor/frameworks/twitter/bootstrap/pagination.less +1 -0
  35. data/vendor/frameworks/twitter/bootstrap/progress-bars.less +15 -1
  36. data/vendor/frameworks/twitter/bootstrap/reset.less +1 -1
  37. data/vendor/frameworks/twitter/bootstrap/responsive.less +72 -28
  38. data/vendor/frameworks/twitter/bootstrap/scaffolding.less +4 -4
  39. data/vendor/frameworks/twitter/bootstrap/sprites.less +3 -3
  40. data/vendor/frameworks/twitter/bootstrap/tables.less +26 -17
  41. data/vendor/frameworks/twitter/bootstrap/type.less +22 -6
  42. data/vendor/frameworks/twitter/bootstrap/variables.less +100 -6
  43. data/vendor/frameworks/twitter/bootstrap/wells.less +10 -0
  44. metadata +6 -7
  45. data/vendor/frameworks/twitter/bootstrap/patterns.less +0 -13
  46. data/vendor/frameworks/twitter/bootstrap/print.less +0 -18
@@ -1,8 +1,5 @@
1
- // GRID SYSTEM
2
- // -----------
3
-
4
1
  // Fixed (940px)
5
- #gridSystem > .generate(@gridColumns, @gridColumnWidth, @gridGutterWidth);
2
+ #grid > .core(@gridColumnWidth, @gridGutterWidth);
6
3
 
7
4
  // Fluid (940px)
8
- #fluidGridSystem > .generate(@gridColumns, @fluidGridColumnWidth, @fluidGridGutterWidth);
5
+ #grid > .fluid(@fluidGridColumnWidth, @fluidGridGutterWidth);
@@ -4,17 +4,19 @@
4
4
  .hero-unit {
5
5
  padding: 60px;
6
6
  margin-bottom: 30px;
7
- background-color: #f5f5f5;
7
+ background-color: @heroUnitBackground;
8
8
  .border-radius(6px);
9
9
  h1 {
10
10
  margin-bottom: 0;
11
11
  font-size: 60px;
12
12
  line-height: 1;
13
+ color: @heroUnitHeadingColor;
13
14
  letter-spacing: -1px;
14
15
  }
15
16
  p {
16
17
  font-size: 18px;
17
18
  font-weight: 200;
18
19
  line-height: @baseLineHeight * 1.5;
20
+ color: @heroUnitLeadColor;
19
21
  }
20
22
  }
@@ -3,10 +3,13 @@
3
3
 
4
4
  // Base
5
5
  .label {
6
- padding: 2px 4px 3px;
7
- font-size: @baseFontSize * .85;
6
+ padding: 1px 4px 2px;
7
+ font-size: @baseFontSize * .846;
8
8
  font-weight: bold;
9
+ line-height: 13px; // ensure proper line-height if floated
9
10
  color: @white;
11
+ vertical-align: middle;
12
+ white-space: nowrap;
10
13
  text-shadow: 0 -1px 0 rgba(0,0,0,.25);
11
14
  background-color: @grayLight;
12
15
  .border-radius(3px);
@@ -30,3 +33,6 @@
30
33
 
31
34
  .label-info { background-color: @infoText; }
32
35
  .label-info:hover { background-color: darken(@infoText, 10%); }
36
+
37
+ .label-inverse { background-color: @grayDark; }
38
+ .label-inverse:hover { background-color: darken(@grayDark, 10%); }
@@ -98,6 +98,14 @@
98
98
  white-space: nowrap;
99
99
  }
100
100
 
101
+ // New image replacement
102
+ // -------------------------
103
+ // Source: http://www.zeldman.com/2012/03/01/replacing-the-9999px-hack-new-image-replacement/
104
+ .hide-text {
105
+ overflow: hidden;
106
+ text-indent: 100%;
107
+ white-space: nowrap;
108
+ }
101
109
 
102
110
 
103
111
  // FONTS
@@ -135,159 +143,19 @@
135
143
  }
136
144
 
137
145
 
138
-
139
- // GRID SYSTEM
146
+ // FORMS
140
147
  // --------------------------------------------------
141
148
 
142
- // Site container
143
- // -------------------------
144
- .container-fixed() {
145
- width: @gridRowWidth;
146
- margin-left: auto;
147
- margin-right: auto;
148
- .clearfix();
149
- }
150
-
151
- // Le grid system
152
- // -------------------------
153
- #gridSystem {
154
- // Setup the mixins to be used
155
- .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, @columns) {
156
- width: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1));
157
- }
158
- .offset(@gridColumnWidth, @gridGutterWidth, @columns) {
159
- margin-left: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1)) + (@gridGutterWidth * 2);
160
- }
161
- .gridColumn(@gridGutterWidth) {
162
- float: left;
163
- margin-left: @gridGutterWidth;
164
- }
165
- // Take these values and mixins, and make 'em do their thang
166
- .generate(@gridColumns, @gridColumnWidth, @gridGutterWidth) {
167
- // Row surrounds the columns
168
- .row {
169
- margin-left: @gridGutterWidth * -1;
170
- .clearfix();
171
- }
172
- // Find all .span# classes within .row and give them the necessary properties for grid columns (supported by all browsers back to IE7, thanks @dhg)
173
- [class*="span"] {
174
- #gridSystem > .gridColumn(@gridGutterWidth);
175
- }
176
- // Default columns
177
- .span1 { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 1); }
178
- .span2 { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 2); }
179
- .span3 { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 3); }
180
- .span4 { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 4); }
181
- .span5 { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 5); }
182
- .span6 { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 6); }
183
- .span7 { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 7); }
184
- .span8 { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 8); }
185
- .span9 { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 9); }
186
- .span10 { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 10); }
187
- .span11 { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 11); }
188
- .span12,
189
- .container { #gridSystem > .columns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 12); }
190
- // Offset column options
191
- .offset1 { #gridSystem > .offset(@gridColumnWidth, @gridGutterWidth, 1); }
192
- .offset2 { #gridSystem > .offset(@gridColumnWidth, @gridGutterWidth, 2); }
193
- .offset3 { #gridSystem > .offset(@gridColumnWidth, @gridGutterWidth, 3); }
194
- .offset4 { #gridSystem > .offset(@gridColumnWidth, @gridGutterWidth, 4); }
195
- .offset5 { #gridSystem > .offset(@gridColumnWidth, @gridGutterWidth, 5); }
196
- .offset6 { #gridSystem > .offset(@gridColumnWidth, @gridGutterWidth, 6); }
197
- .offset7 { #gridSystem > .offset(@gridColumnWidth, @gridGutterWidth, 7); }
198
- .offset8 { #gridSystem > .offset(@gridColumnWidth, @gridGutterWidth, 8); }
199
- .offset9 { #gridSystem > .offset(@gridColumnWidth, @gridGutterWidth, 9); }
200
- .offset10 { #gridSystem > .offset(@gridColumnWidth, @gridGutterWidth, 10); }
201
- .offset11 { #gridSystem > .offset(@gridColumnWidth, @gridGutterWidth, 11); }
202
- }
203
- }
204
-
205
- // Fluid grid system
206
- // -------------------------
207
- #fluidGridSystem {
208
- // Setup the mixins to be used
209
- .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, @columns) {
210
- width: 1% * (@fluidGridColumnWidth * @columns) + (@fluidGridGutterWidth * (@columns - 1));
211
- }
212
- .gridColumn(@fluidGridGutterWidth) {
213
- float: left;
214
- margin-left: @fluidGridGutterWidth;
215
- }
216
- // Take these values and mixins, and make 'em do their thang
217
- .generate(@gridColumns, @fluidGridColumnWidth, @fluidGridGutterWidth) {
218
- // Row surrounds the columns
219
- .row-fluid {
220
- width: 100%;
221
- .clearfix();
222
-
223
- // Find all .span# classes within .row and give them the necessary properties for grid columns (supported by all browsers back to IE7, thanks @dhg)
224
- > [class*="span"] {
225
- #fluidGridSystem > .gridColumn(@fluidGridGutterWidth);
226
- }
227
- > [class*="span"]:first-child {
228
- margin-left: 0;
229
- }
230
- // Default columns
231
- > .span1 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 1); }
232
- > .span2 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 2); }
233
- > .span3 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 3); }
234
- > .span4 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 4); }
235
- > .span5 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 5); }
236
- > .span6 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 6); }
237
- > .span7 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 7); }
238
- > .span8 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 8); }
239
- > .span9 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 9); }
240
- > .span10 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 10); }
241
- > .span11 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 11); }
242
- > .span12 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 12); }
243
- }
244
- }
245
- }
246
-
247
- // Input grid system
248
- // -------------------------
249
- #inputGridSystem {
250
- .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, @columns) {
251
- width: ((@gridColumnWidth) * @columns) + (@gridGutterWidth * (@columns - 1)) - 10;
252
- }
253
- .generate(@gridColumns, @gridColumnWidth, @gridGutterWidth) {
254
- input,
255
- textarea,
256
- .uneditable-input {
257
- &.span1 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 1); }
258
- &.span2 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 2); }
259
- &.span3 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 3); }
260
- &.span4 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 4); }
261
- &.span5 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 5); }
262
- &.span6 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 6); }
263
- &.span7 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 7); }
264
- &.span8 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 8); }
265
- &.span9 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 9); }
266
- &.span10 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 10); }
267
- &.span11 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 11); }
268
- &.span12 { #inputGridSystem > .inputColumns(@gridGutterWidth, @gridColumnWidth, @gridRowWidth, 12); }
269
- }
270
- }
271
- }
272
-
273
- // Make a Grid
274
- // -------------------------
275
- // Use .makeRow and .makeColumn to assign semantic layouts grid system behavior
276
- .makeRow() {
277
- margin-left: @gridGutterWidth * -1;
278
- .clearfix();
279
- }
280
- .makeColumn(@columns: 1) {
281
- float: left;
282
- margin-left: @gridGutterWidth;
283
- width: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1));
149
+ // Block level inputs
150
+ .input-block-level {
151
+ display: block;
152
+ width: 100%;
153
+ min-height: 28px; /* Make inputs at least the height of their button counterpart */
154
+ /* Makes inputs behave like true block-level elements */
155
+ .box-sizing(border-box);
284
156
  }
285
157
 
286
158
 
287
-
288
- // Form field states (used in forms.less)
289
- // --------------------------------------------------
290
-
291
159
  // Mixin for form field states
292
160
  .formFieldState(@textColor: #555, @borderColor: #ccc, @backgroundColor: #f5f5f5) {
293
161
  // Set the text color
@@ -402,6 +270,7 @@
402
270
  .box-sizing(@boxmodel) {
403
271
  -webkit-box-sizing: @boxmodel;
404
272
  -moz-box-sizing: @boxmodel;
273
+ -ms-box-sizing: @boxmodel;
405
274
  box-sizing: @boxmodel;
406
275
  }
407
276
 
@@ -433,7 +302,7 @@
433
302
  // Opacity
434
303
  .opacity(@opacity: 100) {
435
304
  opacity: @opacity / 100;
436
- filter: e(%("alpha(opacity=%d)", @opacity));
305
+ filter: ~"alpha(opacity=@{opacity})";
437
306
  }
438
307
 
439
308
 
@@ -509,8 +378,8 @@
509
378
  background-image: -webkit-radial-gradient(circle, @innerColor, @outerColor);
510
379
  background-image: -moz-radial-gradient(circle, @innerColor, @outerColor);
511
380
  background-image: -ms-radial-gradient(circle, @innerColor, @outerColor);
381
+ background-image: -o-radial-gradient(circle, @innerColor, @outerColor);
512
382
  background-repeat: no-repeat;
513
- // Opera cannot do radial gradients yet
514
383
  }
515
384
  .striped(@color, @angle: -45deg) {
516
385
  background-color: @color;
@@ -524,12 +393,34 @@
524
393
  }
525
394
  // Reset filters for IE
526
395
  .reset-filter() {
527
- filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)"));
396
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
528
397
  }
529
398
 
530
399
 
531
- // Mixin for generating button backgrounds
532
- // ---------------------------------------
400
+
401
+ // COMPONENT MIXINS
402
+ // --------------------------------------------------
403
+
404
+ // Horizontal dividers
405
+ // -------------------------
406
+ // Dividers (basically an hr) within dropdowns and nav lists
407
+ .nav-divider() {
408
+ height: 1px;
409
+ margin: ((@baseLineHeight / 2) - 1) 1px; // 8px 1px
410
+ overflow: hidden;
411
+ background-color: #e5e5e5;
412
+ border-bottom: 1px solid @white;
413
+
414
+ // IE7 needs a set width since we gave a height. Restricting just
415
+ // to IE7 to keep the 1px left/right space in other browsers.
416
+ // It is unclear where IE is getting the extra space that we need
417
+ // to negative-margin away, but so it goes.
418
+ *width: 100%;
419
+ *margin: -5px 0 5px;
420
+ }
421
+
422
+ // Button backgrounds
423
+ // ------------------
533
424
  .buttonBackground(@startColor, @endColor) {
534
425
  // gradientBar will set the background to a pleasing blend of these, to support IE<=9
535
426
  .gradientBar(@startColor, @endColor);
@@ -547,44 +438,177 @@
547
438
  }
548
439
  }
549
440
 
441
+ // Navbar vertical align
442
+ // -------------------------
443
+ // Vertically center elements in the navbar.
444
+ // Example: an element has a height of 30px, so write out `.navbarVerticalAlign(30px);` to calculate the appropriate top margin.
445
+ .navbarVerticalAlign(@elementHeight) {
446
+ margin-top: (@navbarHeight - @elementHeight) / 2;
447
+ }
550
448
 
551
- // COMPONENT MIXINS
552
- // --------------------------------------------------
553
-
554
- // POPOVER ARROWS
449
+ // Popover arrows
555
450
  // -------------------------
556
451
  // For tipsies and popovers
557
452
  #popoverArrow {
558
- .top(@arrowWidth: 5px) {
453
+ .top(@arrowWidth: 5px, @color: @black) {
559
454
  bottom: 0;
560
455
  left: 50%;
561
456
  margin-left: -@arrowWidth;
562
457
  border-left: @arrowWidth solid transparent;
563
458
  border-right: @arrowWidth solid transparent;
564
- border-top: @arrowWidth solid @black;
459
+ border-top: @arrowWidth solid @color;
565
460
  }
566
- .left(@arrowWidth: 5px) {
461
+ .left(@arrowWidth: 5px, @color: @black) {
567
462
  top: 50%;
568
463
  right: 0;
569
464
  margin-top: -@arrowWidth;
570
465
  border-top: @arrowWidth solid transparent;
571
466
  border-bottom: @arrowWidth solid transparent;
572
- border-left: @arrowWidth solid @black;
467
+ border-left: @arrowWidth solid @color;
573
468
  }
574
- .bottom(@arrowWidth: 5px) {
469
+ .bottom(@arrowWidth: 5px, @color: @black) {
575
470
  top: 0;
576
471
  left: 50%;
577
472
  margin-left: -@arrowWidth;
578
473
  border-left: @arrowWidth solid transparent;
579
474
  border-right: @arrowWidth solid transparent;
580
- border-bottom: @arrowWidth solid @black;
475
+ border-bottom: @arrowWidth solid @color;
581
476
  }
582
- .right(@arrowWidth: 5px) {
477
+ .right(@arrowWidth: 5px, @color: @black) {
583
478
  top: 50%;
584
479
  left: 0;
585
480
  margin-top: -@arrowWidth;
586
481
  border-top: @arrowWidth solid transparent;
587
482
  border-bottom: @arrowWidth solid transparent;
588
- border-right: @arrowWidth solid @black;
483
+ border-right: @arrowWidth solid @color;
589
484
  }
590
485
  }
486
+
487
+ // Grid System
488
+ // -----------
489
+
490
+ // Centered container element
491
+ .container-fixed() {
492
+ margin-left: auto;
493
+ margin-right: auto;
494
+ .clearfix();
495
+ }
496
+
497
+ // Table columns
498
+ .tableColumns(@columnSpan: 1) {
499
+ float: none; // undo default grid column styles
500
+ width: ((@gridColumnWidth) * @columnSpan) + (@gridGutterWidth * (@columnSpan - 1)) - 16; // 16 is total padding on left and right of table cells
501
+ margin-left: 0; // undo default grid column styles
502
+ }
503
+
504
+ // Make a Grid
505
+ // Use .makeRow and .makeColumn to assign semantic layouts grid system behavior
506
+ .makeRow() {
507
+ margin-left: @gridGutterWidth * -1;
508
+ .clearfix();
509
+ }
510
+ .makeColumn(@columns: 1) {
511
+ float: left;
512
+ margin-left: @gridGutterWidth;
513
+ width: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1));
514
+ }
515
+
516
+ // The Grid
517
+ #grid {
518
+
519
+ .core (@gridColumnWidth, @gridGutterWidth) {
520
+
521
+ .spanX (@index) when (@index > 0) {
522
+ (~".span@{index}") { .span(@index); }
523
+ .spanX(@index - 1);
524
+ }
525
+ .spanX (0) {}
526
+
527
+ .offsetX (@index) when (@index > 0) {
528
+ (~".offset@{index}") { .offset(@index); }
529
+ .offsetX(@index - 1);
530
+ }
531
+ .offsetX (0) {}
532
+
533
+ .offset (@columns) {
534
+ margin-left: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1)) + (@gridGutterWidth * 2);
535
+ }
536
+
537
+ .span (@columns) {
538
+ width: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1));
539
+ }
540
+
541
+ .row {
542
+ margin-left: @gridGutterWidth * -1;
543
+ .clearfix();
544
+ }
545
+
546
+ [class*="span"] {
547
+ float: left;
548
+ margin-left: @gridGutterWidth;
549
+ }
550
+
551
+ // Set the container width, and override it for fixed navbars in media queries
552
+ .container,
553
+ .navbar-fixed-top .container,
554
+ .navbar-fixed-bottom .container { .span(@gridColumns); }
555
+
556
+ // generate .spanX and .offsetX
557
+ .spanX (@gridColumns);
558
+ .offsetX (@gridColumns);
559
+
560
+ }
561
+
562
+ .fluid (@fluidGridColumnWidth, @fluidGridGutterWidth) {
563
+
564
+ .spanX (@index) when (@index > 0) {
565
+ (~"> .span@{index}") { .span(@index); }
566
+ .spanX(@index - 1);
567
+ }
568
+ .spanX (0) {}
569
+
570
+ .span (@columns) {
571
+ width: (@fluidGridColumnWidth * @columns) + (@fluidGridGutterWidth * (@columns - 1));
572
+ }
573
+
574
+ .row-fluid {
575
+ width: 100%;
576
+ .clearfix();
577
+ > [class*="span"] {
578
+ float: left;
579
+ margin-left: @fluidGridGutterWidth;
580
+ }
581
+ > [class*="span"]:first-child {
582
+ margin-left: 0;
583
+ }
584
+
585
+ // generate .spanX
586
+ .spanX (@gridColumns);
587
+ }
588
+
589
+ }
590
+
591
+ .input(@gridColumnWidth, @gridGutterWidth) {
592
+
593
+ .spanX (@index) when (@index > 0) {
594
+ (~"input.span@{index}, textarea.span@{index}, .uneditable-input.span@{index}") { .span(@index); }
595
+ .spanX(@index - 1);
596
+ }
597
+ .spanX (0) {}
598
+
599
+ .span(@columns) {
600
+ width: ((@gridColumnWidth) * @columns) + (@gridGutterWidth * (@columns - 1)) - 10;
601
+ }
602
+
603
+ input,
604
+ textarea,
605
+ .uneditable-input {
606
+ margin-left: 0; // override margin-left from core grid system
607
+ }
608
+
609
+ // generate .spanX
610
+ .spanX (@gridColumns);
611
+
612
+ }
613
+
614
+ }