bootstrap-generators 3.0.0.1 → 3.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +8 -8
  3. data/Rakefile +3 -7
  4. data/lib/bootstrap/generators/version.rb +1 -1
  5. data/lib/generators/bootstrap/install/templates/assets/stylesheets/bootstrap-variables.less +57 -40
  6. data/lib/generators/bootstrap/install/templates/assets/stylesheets/bootstrap-variables.scss +57 -40
  7. data/lib/generators/bootstrap/install/templates/layouts/starter.html.erb +1 -1
  8. data/lib/generators/bootstrap/install/templates/layouts/starter.html.haml +1 -1
  9. data/readme-template.md.erb +1 -1
  10. data/vendor/assets/fonts/glyphicons-halflings-regular.eot +0 -0
  11. data/vendor/assets/fonts/glyphicons-halflings-regular.svg +200 -199
  12. data/vendor/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
  13. data/vendor/assets/fonts/glyphicons-halflings-regular.woff +0 -0
  14. data/vendor/assets/javascripts/bootstrap.js +5 -5
  15. data/vendor/assets/javascripts/bootstrap/affix.js +4 -4
  16. data/vendor/assets/javascripts/bootstrap/alert.js +3 -3
  17. data/vendor/assets/javascripts/bootstrap/button.js +3 -3
  18. data/vendor/assets/javascripts/bootstrap/carousel.js +4 -4
  19. data/vendor/assets/javascripts/bootstrap/collapse.js +4 -4
  20. data/vendor/assets/javascripts/bootstrap/dropdown.js +4 -4
  21. data/vendor/assets/javascripts/bootstrap/modal.js +4 -4
  22. data/vendor/assets/javascripts/bootstrap/popover.js +4 -4
  23. data/vendor/assets/javascripts/bootstrap/scrollspy.js +4 -4
  24. data/vendor/assets/javascripts/bootstrap/tab.js +5 -5
  25. data/vendor/assets/javascripts/bootstrap/tooltip.js +4 -4
  26. data/vendor/assets/javascripts/bootstrap/transition.js +3 -3
  27. data/vendor/assets/stylesheets/bootstrap.css +1039 -746
  28. data/vendor/twitter/bootstrap/less/alerts.less +1 -1
  29. data/vendor/twitter/bootstrap/less/bootstrap.less +0 -10
  30. data/vendor/twitter/bootstrap/less/breadcrumbs.less +2 -2
  31. data/vendor/twitter/bootstrap/less/button-groups.less +6 -1
  32. data/vendor/twitter/bootstrap/less/buttons.less +2 -4
  33. data/vendor/twitter/bootstrap/less/carousel.less +32 -10
  34. data/vendor/twitter/bootstrap/less/code.less +5 -8
  35. data/vendor/twitter/bootstrap/less/dropdowns.less +1 -2
  36. data/vendor/twitter/bootstrap/less/forms.less +21 -10
  37. data/vendor/twitter/bootstrap/less/glyphicons.less +20 -15
  38. data/vendor/twitter/bootstrap/less/grid.less +32 -285
  39. data/vendor/twitter/bootstrap/less/input-groups.less +9 -0
  40. data/vendor/twitter/bootstrap/less/jumbotron.less +2 -2
  41. data/vendor/twitter/bootstrap/less/list-group.less +12 -12
  42. data/vendor/twitter/bootstrap/less/mixins.less +164 -29
  43. data/vendor/twitter/bootstrap/less/modals.less +2 -11
  44. data/vendor/twitter/bootstrap/less/navbar.less +10 -7
  45. data/vendor/twitter/bootstrap/less/navs.less +53 -20
  46. data/vendor/twitter/bootstrap/less/normalize.less +16 -6
  47. data/vendor/twitter/bootstrap/less/pagination.less +2 -0
  48. data/vendor/twitter/bootstrap/less/panels.less +31 -7
  49. data/vendor/twitter/bootstrap/less/print.less +6 -1
  50. data/vendor/twitter/bootstrap/less/progress-bars.less +4 -7
  51. data/vendor/twitter/bootstrap/less/responsive-utilities.less +57 -68
  52. data/vendor/twitter/bootstrap/less/scaffolding.less +1 -12
  53. data/vendor/twitter/bootstrap/less/tables.less +40 -40
  54. data/vendor/twitter/bootstrap/less/theme.less +32 -17
  55. data/vendor/twitter/bootstrap/less/thumbnails.less +14 -15
  56. data/vendor/twitter/bootstrap/less/tooltip.less +8 -8
  57. data/vendor/twitter/bootstrap/less/type.less +71 -30
  58. data/vendor/twitter/bootstrap/less/utilities.less +15 -1
  59. data/vendor/twitter/bootstrap/less/variables.less +56 -39
  60. data/vendor/twitter/bootstrap/sass/_alerts.scss +1 -1
  61. data/vendor/twitter/bootstrap/sass/_breadcrumbs.scss +2 -2
  62. data/vendor/twitter/bootstrap/sass/_button-groups.scss +6 -1
  63. data/vendor/twitter/bootstrap/sass/_buttons.scss +2 -4
  64. data/vendor/twitter/bootstrap/sass/_carousel.scss +32 -10
  65. data/vendor/twitter/bootstrap/sass/_close.scss +2 -0
  66. data/vendor/twitter/bootstrap/sass/_code.scss +5 -8
  67. data/vendor/twitter/bootstrap/sass/_dropdowns.scss +1 -2
  68. data/vendor/twitter/bootstrap/sass/_forms.scss +23 -10
  69. data/vendor/twitter/bootstrap/sass/_glyphicons.scss +20 -15
  70. data/vendor/twitter/bootstrap/sass/_grid.scss +32 -285
  71. data/vendor/twitter/bootstrap/sass/_input-groups.scss +9 -0
  72. data/vendor/twitter/bootstrap/sass/_jumbotron.scss +2 -2
  73. data/vendor/twitter/bootstrap/sass/_list-group.scss +16 -16
  74. data/vendor/twitter/bootstrap/sass/_mixins.scss +167 -34
  75. data/vendor/twitter/bootstrap/sass/_modals.scss +2 -15
  76. data/vendor/twitter/bootstrap/sass/_navbar.scss +10 -7
  77. data/vendor/twitter/bootstrap/sass/_navs.scss +53 -20
  78. data/vendor/twitter/bootstrap/sass/_normalize.scss +16 -6
  79. data/vendor/twitter/bootstrap/sass/_pagination.scss +2 -0
  80. data/vendor/twitter/bootstrap/sass/_panels.scss +31 -7
  81. data/vendor/twitter/bootstrap/sass/_print.scss +6 -1
  82. data/vendor/twitter/bootstrap/sass/_progress-bars.scss +4 -7
  83. data/vendor/twitter/bootstrap/sass/_responsive-utilities.scss +37 -48
  84. data/vendor/twitter/bootstrap/sass/_scaffolding.scss +1 -12
  85. data/vendor/twitter/bootstrap/sass/_tables.scss +52 -44
  86. data/vendor/twitter/bootstrap/sass/_theme.scss +26 -11
  87. data/vendor/twitter/bootstrap/sass/_thumbnails.scss +13 -12
  88. data/vendor/twitter/bootstrap/sass/_tooltip.scss +8 -8
  89. data/vendor/twitter/bootstrap/sass/_type.scss +71 -30
  90. data/vendor/twitter/bootstrap/sass/_utilities.scss +15 -1
  91. data/vendor/twitter/bootstrap/sass/_variables.scss +56 -39
  92. data/vendor/twitter/bootstrap/sass/bootstrap.scss +0 -10
  93. metadata +2 -5
  94. data/vendor/assets/javascripts/bootstrap-ie.js +0 -2
  95. data/vendor/assets/javascripts/bootstrap-ie/html5shiv.js +0 -8
  96. data/vendor/assets/javascripts/bootstrap-ie/respond.min.js +0 -6
@@ -61,6 +61,7 @@
61
61
  font-size: @font-size-base;
62
62
  font-weight: normal;
63
63
  line-height: 1;
64
+ color: @input-color;
64
65
  text-align: center;
65
66
  background-color: @input-group-addon-bg;
66
67
  border: 1px solid @input-group-addon-border-color;
@@ -112,6 +113,14 @@
112
113
  .input-group-btn {
113
114
  position: relative;
114
115
  white-space: nowrap;
116
+
117
+ // Negative margin to only have a 1px border between the two
118
+ &:first-child > .btn {
119
+ margin-right: -1px;
120
+ }
121
+ &:last-child > .btn {
122
+ margin-left: -1px;
123
+ }
115
124
  }
116
125
  .input-group-btn > .btn {
117
126
  position: relative;
@@ -6,7 +6,7 @@
6
6
  .jumbotron {
7
7
  padding: @jumbotron-padding;
8
8
  margin-bottom: @jumbotron-padding;
9
- font-size: (@font-size-base * 1.5);
9
+ font-size: @jumbotron-font-size;
10
10
  font-weight: 200;
11
11
  line-height: (@line-height-base * 1.5);
12
12
  color: @jumbotron-color;
@@ -24,7 +24,7 @@
24
24
  border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container
25
25
  }
26
26
 
27
- @media screen and (min-width: @screen-tablet) {
27
+ @media screen and (min-width: @screen-sm-min) {
28
28
  padding-top: (@jumbotron-padding * 1.6);
29
29
  padding-bottom: (@jumbotron-padding * 1.6);
30
30
 
@@ -39,21 +39,21 @@
39
39
  > .badge + .badge {
40
40
  margin-right: 5px;
41
41
  }
42
+ }
42
43
 
43
- // Linked list items
44
- a& {
45
- color: @list-group-link-color;
44
+ // Linked list items
45
+ a.list-group-item {
46
+ color: @list-group-link-color;
46
47
 
47
- .list-group-item-heading {
48
- color: @list-group-link-heading-color;
49
- }
48
+ .list-group-item-heading {
49
+ color: @list-group-link-heading-color;
50
+ }
50
51
 
51
- // Hover state
52
- &:hover,
53
- &:focus {
54
- text-decoration: none;
55
- background-color: @list-group-hover-bg;
56
- }
52
+ // Hover state
53
+ &:hover,
54
+ &:focus {
55
+ text-decoration: none;
56
+ background-color: @list-group-hover-bg;
57
57
  }
58
58
 
59
59
  // Active class on item itself, not parent
@@ -27,11 +27,11 @@
27
27
  }
28
28
  }
29
29
 
30
- // Webkit-style focus
30
+ // WebKit-style focus
31
31
  .tab-focus() {
32
32
  // Default
33
33
  outline: thin dotted #333;
34
- // Webkit
34
+ // WebKit
35
35
  outline: 5px auto -webkit-focus-ring-color;
36
36
  outline-offset: -2px;
37
37
  }
@@ -69,7 +69,15 @@
69
69
  }
70
70
 
71
71
  // CSS image replacement
72
+ //
73
+ // Heads up! v3 launched with with only `.hide-text()`, but per our pattern for
74
+ // mixins being reused as classes with the same name, this doesn't hold up. As
75
+ // of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. Note
76
+ // that we cannot chain the mixins together in Less, so they are repeated.
77
+ //
72
78
  // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
79
+
80
+ // Deprecated as of v3.0.1 (will be removed in v4)
73
81
  .hide-text() {
74
82
  font: ~"0/0" a;
75
83
  color: transparent;
@@ -77,6 +85,14 @@
77
85
  background-color: transparent;
78
86
  border: 0;
79
87
  }
88
+ // New mixin to use as of v3.0.1
89
+ .text-hide() {
90
+ font: ~"0/0" a;
91
+ color: transparent;
92
+ text-shadow: none;
93
+ background-color: transparent;
94
+ border: 0;
95
+ }
80
96
 
81
97
 
82
98
 
@@ -112,6 +128,10 @@
112
128
  -webkit-transition: @transition;
113
129
  transition: @transition;
114
130
  }
131
+ .transition-property(@transition-property) {
132
+ -webkit-transition-property: @transition-property;
133
+ transition-property: @transition-property;
134
+ }
115
135
  .transition-delay(@transition-delay) {
116
136
  -webkit-transition-delay: @transition-delay;
117
137
  transition-delay: @transition-delay;
@@ -153,10 +173,41 @@
153
173
  transform: translate3d(@x, @y, @z);
154
174
  }
155
175
 
176
+ .rotateX(@degrees) {
177
+ -webkit-transform: rotateX(@degrees);
178
+ -ms-transform: rotateX(@degrees); // IE9+
179
+ transform: rotateX(@degrees);
180
+ }
181
+ .rotateY(@degrees) {
182
+ -webkit-transform: rotateY(@degrees);
183
+ -ms-transform: rotateY(@degrees); // IE9+
184
+ transform: rotateY(@degrees);
185
+ }
186
+ .perspective(@perspective) {
187
+ -webkit-perspective: @perspective;
188
+ -moz-perspective: @perspective;
189
+ perspective: @perspective;
190
+ }
191
+ .perspective-origin(@perspective) {
192
+ -webkit-perspective-origin: @perspective;
193
+ -moz-perspective-origin: @perspective;
194
+ perspective-origin: @perspective;
195
+ }
196
+ .transform-origin(@origin) {
197
+ -webkit-transform-origin: @origin;
198
+ -moz-transform-origin: @origin;
199
+ transform-origin: @origin;
200
+ }
201
+
202
+ // Animations
203
+ .animation(@animation) {
204
+ -webkit-animation: @animation;
205
+ animation: @animation;
206
+ }
207
+
156
208
  // Backface visibility
157
209
  // Prevent browsers from flickering when using CSS 3D transforms.
158
210
  // Default value is `visible`, but can be changed to `hidden`
159
- // See git pull https://github.com/dannykeane/bootstrap.git backface-visibility for examples
160
211
  .backface-visibility(@visibility){
161
212
  -webkit-backface-visibility: @visibility;
162
213
  -moz-backface-visibility: @visibility;
@@ -240,7 +291,7 @@
240
291
  // Color stops are not available in IE9 and below.
241
292
  .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {
242
293
  background-image: -webkit-gradient(linear, left @start-percent, left @end-percent, from(@start-color), to(@end-color)); // Safari 4+, Chrome 2+
243
- background-image: -webkit-linear-gradient(top, @start-color, @start-percent, @end-color, @end-percent); // Safari 5.1+, Chrome 10+
294
+ background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1+, Chrome 10+
244
295
  background-image: -moz-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // FF 3.6+
245
296
  background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10
246
297
  background-repeat: repeat-x;
@@ -276,11 +327,11 @@
276
327
  background-image: radial-gradient(circle, @inner-color, @outer-color);
277
328
  background-repeat: no-repeat;
278
329
  }
279
- .striped(@color: #555; @angle: 45deg) {
280
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
281
- background-image: -webkit-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
282
- background-image: -moz-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
283
- background-image: linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
330
+ .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {
331
+ background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, @color), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, @color), color-stop(.75, @color), color-stop(.75, transparent), to(transparent));
332
+ background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);
333
+ background-image: -moz-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);
334
+ background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);
284
335
  }
285
336
  }
286
337
 
@@ -342,13 +393,18 @@
342
393
  // -------------------------
343
394
  .panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border;) {
344
395
  border-color: @border;
396
+
345
397
  & > .panel-heading {
346
398
  color: @heading-text-color;
347
399
  background-color: @heading-bg-color;
348
400
  border-color: @heading-border;
401
+
349
402
  + .panel-collapse .panel-body {
350
403
  border-top-color: @border;
351
404
  }
405
+ & > .dropdown .caret {
406
+ border-color: @heading-text-color transparent;
407
+ }
352
408
  }
353
409
  & > .panel-footer {
354
410
  + .panel-collapse .panel-body {
@@ -363,6 +419,7 @@
363
419
  background-color: @background;
364
420
  border-color: @border;
365
421
  color: @text-color;
422
+
366
423
  hr {
367
424
  border-top-color: darken(@border, 5%);
368
425
  }
@@ -384,7 +441,6 @@
384
441
  &.@{state} > td,
385
442
  &.@{state} > th {
386
443
  background-color: @background;
387
- border-color: @border;
388
444
  }
389
445
  }
390
446
 
@@ -393,9 +449,9 @@
393
449
  .table-hover > tbody > tr {
394
450
  > td.@{state}:hover,
395
451
  > th.@{state}:hover,
396
- &.@{state}:hover > td {
452
+ &.@{state}:hover > td,
453
+ &.@{state}:hover > th {
397
454
  background-color: darken(@background, 5%);
398
- border-color: darken(@border, 5%);
399
455
  }
400
456
  }
401
457
  }
@@ -432,7 +488,7 @@
432
488
  &:active,
433
489
  &.active {
434
490
  background-color: @background;
435
- border-color: @border
491
+ border-color: @border;
436
492
  }
437
493
  }
438
494
  }
@@ -496,7 +552,7 @@
496
552
  .progress-bar-variant(@color) {
497
553
  background-color: @color;
498
554
  .progress-striped & {
499
- #gradient > .striped(@color);
555
+ #gradient > .striped();
500
556
  }
501
557
  }
502
558
 
@@ -511,12 +567,13 @@
511
567
  }
512
568
 
513
569
  .responsive-invisibility() {
514
- display: none !important;
515
- tr& { display: none !important; }
570
+ &,
571
+ tr&,
516
572
  th&,
517
573
  td& { display: none !important; }
518
574
  }
519
575
 
576
+
520
577
  // Grid System
521
578
  // -----------
522
579
 
@@ -558,7 +615,7 @@
558
615
  padding-right: (@gutter / 2);
559
616
 
560
617
  // Calculate width based on number of columns available
561
- @media (min-width: @screen-sm) {
618
+ @media (min-width: @screen-sm-min) {
562
619
  float: left;
563
620
  width: percentage((@columns / @grid-columns));
564
621
  }
@@ -566,17 +623,17 @@
566
623
 
567
624
  // Generate the small column offsets
568
625
  .make-sm-column-offset(@columns) {
569
- @media (min-width: @screen-sm) {
626
+ @media (min-width: @screen-sm-min) {
570
627
  margin-left: percentage((@columns / @grid-columns));
571
628
  }
572
629
  }
573
630
  .make-sm-column-push(@columns) {
574
- @media (min-width: @screen-sm) {
631
+ @media (min-width: @screen-sm-min) {
575
632
  left: percentage((@columns / @grid-columns));
576
633
  }
577
634
  }
578
635
  .make-sm-column-pull(@columns) {
579
- @media (min-width: @screen-sm) {
636
+ @media (min-width: @screen-sm-min) {
580
637
  right: percentage((@columns / @grid-columns));
581
638
  }
582
639
  }
@@ -591,15 +648,15 @@
591
648
  padding-right: (@gutter / 2);
592
649
 
593
650
  // Calculate width based on number of columns available
594
- @media (min-width: @screen-md) {
651
+ @media (min-width: @screen-md-min) {
595
652
  float: left;
596
653
  width: percentage((@columns / @grid-columns));
597
654
  }
598
655
  }
599
656
 
600
- // Generate the large column offsets
657
+ // Generate the medium column offsets
601
658
  .make-md-column-offset(@columns) {
602
- @media (min-width: @screen-md) {
659
+ @media (min-width: @screen-md-min) {
603
660
  margin-left: percentage((@columns / @grid-columns));
604
661
  }
605
662
  }
@@ -609,7 +666,7 @@
609
666
  }
610
667
  }
611
668
  .make-md-column-pull(@columns) {
612
- @media (min-width: @screen-md) {
669
+ @media (min-width: @screen-md-min) {
613
670
  right: percentage((@columns / @grid-columns));
614
671
  }
615
672
  }
@@ -624,7 +681,7 @@
624
681
  padding-right: (@gutter / 2);
625
682
 
626
683
  // Calculate width based on number of columns available
627
- @media (min-width: @screen-lg) {
684
+ @media (min-width: @screen-lg-min) {
628
685
  float: left;
629
686
  width: percentage((@columns / @grid-columns));
630
687
  }
@@ -632,22 +689,96 @@
632
689
 
633
690
  // Generate the large column offsets
634
691
  .make-lg-column-offset(@columns) {
635
- @media (min-width: @screen-lg) {
692
+ @media (min-width: @screen-lg-min) {
636
693
  margin-left: percentage((@columns / @grid-columns));
637
694
  }
638
695
  }
639
696
  .make-lg-column-push(@columns) {
640
- @media (min-width: @screen-lg) {
697
+ @media (min-width: @screen-lg-min) {
641
698
  left: percentage((@columns / @grid-columns));
642
699
  }
643
700
  }
644
701
  .make-lg-column-pull(@columns) {
645
- @media (min-width: @screen-lg) {
702
+ @media (min-width: @screen-lg-min) {
646
703
  right: percentage((@columns / @grid-columns));
647
704
  }
648
705
  }
649
706
 
650
707
 
708
+ // Framework grid generation
709
+ //
710
+ // Used only by Bootstrap to generate the correct number of grid classes given
711
+ // any value of `@grid-columns`.
712
+
713
+ .make-grid-columns() {
714
+ // Common styles for all sizes of grid columns, widths 1-12
715
+ .col(@index) when (@index = 1) { // initial
716
+ @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}";
717
+ .col(@index + 1, @item);
718
+ }
719
+ .col(@index, @list) when (@index =< @grid-columns) { // general; "=<" isn't a typo
720
+ @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}";
721
+ .col(@index + 1, ~"@{list}, @{item}");
722
+ }
723
+ .col(@index, @list) when (@index > @grid-columns) { // terminal
724
+ @{list} {
725
+ position: relative;
726
+ // Prevent columns from collapsing when empty
727
+ min-height: 1px;
728
+ // Inner gutter via padding
729
+ padding-left: (@grid-gutter-width / 2);
730
+ padding-right: (@grid-gutter-width / 2);
731
+ }
732
+ }
733
+ .col(1); // kickstart it
734
+ }
735
+
736
+ .make-grid-columns-float(@class) {
737
+ .col(@index) when (@index = 1) { // initial
738
+ @item: ~".col-@{class}-@{index}";
739
+ .col(@index + 1, @item);
740
+ }
741
+ .col(@index, @list) when (@index < @grid-columns) { // general
742
+ @item: ~".col-@{class}-@{index}";
743
+ .col(@index + 1, ~"@{list}, @{item}");
744
+ }
745
+ .col(@index, @list) when (@index = @grid-columns) { // terminal
746
+ @{list} {
747
+ float: left;
748
+ }
749
+ }
750
+ .col(1); // kickstart it
751
+ }
752
+
753
+ .calc-grid(@index, @class, @type) when (@type = width) and (@index > 0) {
754
+ .col-@{class}-@{index} {
755
+ width: percentage((@index / @grid-columns));
756
+ }
757
+ }
758
+ .calc-grid(@index, @class, @type) when (@type = push) {
759
+ .col-@{class}-push-@{index} {
760
+ left: percentage((@index / @grid-columns));
761
+ }
762
+ }
763
+ .calc-grid(@index, @class, @type) when (@type = pull) {
764
+ .col-@{class}-pull-@{index} {
765
+ right: percentage((@index / @grid-columns));
766
+ }
767
+ }
768
+ .calc-grid(@index, @class, @type) when (@type = offset) {
769
+ .col-@{class}-offset-@{index} {
770
+ margin-left: percentage((@index / @grid-columns));
771
+ }
772
+ }
773
+
774
+ // Basic looping in LESS
775
+ .make-grid(@index, @class, @type) when (@index >= 0) {
776
+ .calc-grid(@index, @class, @type);
777
+ // next iteration
778
+ .make-grid(@index - 1, @class, @type);
779
+ }
780
+
781
+
651
782
  // Form validation states
652
783
  //
653
784
  // Used in forms.less to generate the form validation CSS for warnings, errors,
@@ -656,7 +787,11 @@
656
787
  .form-control-validation(@text-color: #555; @border-color: #ccc; @background-color: #f5f5f5) {
657
788
  // Color the label and help text
658
789
  .help-block,
659
- .control-label {
790
+ .control-label,
791
+ .radio,
792
+ .checkbox,
793
+ .radio-inline,
794
+ .checkbox-inline {
660
795
  color: @text-color;
661
796
  }
662
797
  // Set the border and box shadow on specific inputs to match