bootstrap-generators 2.0.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. data/.rvmrc +1 -0
  2. data/README.md +128 -22
  3. data/Rakefile +59 -0
  4. data/bootstrap-generators.gemspec +1 -1
  5. data/lib/bootstrap/generators/version.rb +1 -1
  6. data/lib/generators/bootstrap/install/install_generator.rb +1 -0
  7. data/lib/generators/bootstrap/install/templates/assets/stylesheets/bootstrap-variables.css.less +98 -0
  8. data/lib/generators/bootstrap/install/templates/assets/stylesheets/bootstrap-variables.css.scss +99 -0
  9. data/lib/generators/bootstrap/install/templates/assets/stylesheets/fluid.css.less +3 -100
  10. data/lib/generators/bootstrap/install/templates/assets/stylesheets/fluid.css.scss +4 -4
  11. data/lib/generators/bootstrap/install/templates/assets/stylesheets/hero.css +1 -0
  12. data/lib/generators/bootstrap/install/templates/assets/stylesheets/hero.css.less +4 -100
  13. data/lib/generators/bootstrap/install/templates/assets/stylesheets/hero.css.scss +5 -4
  14. data/lib/generators/bootstrap/install/templates/config/initializers/simple_form.rb +23 -22
  15. data/lib/generators/bootstrap/install/templates/form_builders/simple_form/_form.html.erb +4 -7
  16. data/lib/generators/bootstrap/install/templates/form_builders/simple_form/_form.html.haml +4 -6
  17. data/lib/generators/bootstrap/install/templates/layouts/fluid.html.erb +3 -2
  18. data/lib/generators/bootstrap/install/templates/layouts/fluid.html.haml +3 -2
  19. data/lib/generators/bootstrap/install/templates/layouts/hero.html.erb +15 -7
  20. data/lib/generators/bootstrap/install/templates/layouts/hero.html.haml +16 -10
  21. data/test/lib/generators/bootstrap/install_generator_test.rb +2 -0
  22. data/vendor/assets/javascripts/bootstrap-alert.js +8 -5
  23. data/vendor/assets/javascripts/bootstrap-button.js +5 -3
  24. data/vendor/assets/javascripts/bootstrap-carousel.js +5 -2
  25. data/vendor/assets/javascripts/bootstrap-collapse.js +2 -2
  26. data/vendor/assets/javascripts/bootstrap-dropdown.js +2 -2
  27. data/vendor/assets/javascripts/bootstrap-modal.js +6 -5
  28. data/vendor/assets/javascripts/bootstrap-popover.js +2 -2
  29. data/vendor/assets/javascripts/bootstrap-scrollspy.js +2 -2
  30. data/vendor/assets/javascripts/bootstrap-tab.js +2 -2
  31. data/vendor/assets/javascripts/bootstrap-tooltip.js +2 -2
  32. data/vendor/assets/javascripts/bootstrap-transition.js +3 -3
  33. data/vendor/assets/javascripts/bootstrap-typeahead.js +2 -2
  34. data/vendor/assets/stylesheets/less/bootstrap.less +1 -1
  35. data/vendor/assets/stylesheets/less/breadcrumbs.less +1 -1
  36. data/vendor/assets/stylesheets/less/button-groups.less +2 -1
  37. data/vendor/assets/stylesheets/less/buttons.less +25 -7
  38. data/vendor/assets/stylesheets/less/code.less +13 -0
  39. data/vendor/assets/stylesheets/less/dropdowns.less +1 -2
  40. data/vendor/assets/stylesheets/less/forms.less +48 -41
  41. data/vendor/assets/stylesheets/less/labels.less +23 -7
  42. data/vendor/assets/stylesheets/less/mixins.less +78 -25
  43. data/vendor/assets/stylesheets/less/modals.less +11 -0
  44. data/vendor/assets/stylesheets/less/navbar.less +11 -4
  45. data/vendor/assets/stylesheets/less/navs.less +20 -11
  46. data/vendor/assets/stylesheets/less/reset.less +1 -1
  47. data/vendor/assets/stylesheets/less/responsive.less +9 -5
  48. data/vendor/assets/stylesheets/less/sprites.less +7 -5
  49. data/vendor/assets/stylesheets/less/tables.less +14 -3
  50. data/vendor/assets/stylesheets/less/thumbnails.less +2 -2
  51. data/vendor/assets/stylesheets/less/type.less +3 -2
  52. data/vendor/assets/stylesheets/less/variables.less +15 -7
  53. data/vendor/assets/stylesheets/scss/accordion.scss +28 -0
  54. data/vendor/assets/stylesheets/scss/alerts.scss +70 -0
  55. data/vendor/assets/stylesheets/scss/bootstrap.scss +62 -0
  56. data/vendor/assets/stylesheets/scss/breadcrumbs.scss +22 -0
  57. data/vendor/assets/stylesheets/scss/button-groups.scss +148 -0
  58. data/vendor/assets/stylesheets/scss/buttons.scss +183 -0
  59. data/vendor/assets/stylesheets/scss/carousel.scss +121 -0
  60. data/vendor/assets/stylesheets/scss/close.scss +18 -0
  61. data/vendor/assets/stylesheets/scss/code.scss +57 -0
  62. data/vendor/assets/stylesheets/scss/component-animations.scss +18 -0
  63. data/vendor/assets/stylesheets/scss/dropdowns.scss +130 -0
  64. data/vendor/assets/stylesheets/scss/forms.scss +522 -0
  65. data/vendor/assets/stylesheets/scss/grid.scss +8 -0
  66. data/vendor/assets/stylesheets/scss/hero-unit.scss +20 -0
  67. data/vendor/assets/stylesheets/scss/labels.scss +32 -0
  68. data/vendor/assets/stylesheets/scss/layouts.scss +17 -0
  69. data/vendor/assets/stylesheets/scss/mixins.scss +579 -0
  70. data/vendor/assets/stylesheets/scss/modals.scss +83 -0
  71. data/vendor/assets/stylesheets/scss/navbar.scss +299 -0
  72. data/vendor/assets/stylesheets/scss/navs.scss +353 -0
  73. data/vendor/assets/stylesheets/scss/pager.scss +30 -0
  74. data/vendor/assets/stylesheets/scss/pagination.scss +55 -0
  75. data/vendor/assets/stylesheets/scss/popovers.scss +49 -0
  76. data/vendor/assets/stylesheets/scss/progress-bars.scss +95 -0
  77. data/vendor/assets/stylesheets/scss/reset.scss +126 -0
  78. data/vendor/assets/stylesheets/scss/responsive.scss +327 -0
  79. data/vendor/assets/stylesheets/scss/scaffolding.scss +29 -0
  80. data/vendor/assets/stylesheets/scss/sprites.scss +158 -0
  81. data/vendor/assets/stylesheets/scss/tables.scss +150 -0
  82. data/vendor/assets/stylesheets/scss/thumbnails.scss +35 -0
  83. data/vendor/assets/stylesheets/scss/tooltip.scss +35 -0
  84. data/vendor/assets/stylesheets/scss/type.scss +218 -0
  85. data/vendor/assets/stylesheets/scss/utilities.scss +23 -0
  86. data/vendor/assets/stylesheets/scss/variables.scss +107 -0
  87. data/vendor/assets/stylesheets/scss/wells.scss +17 -0
  88. metadata +49 -11
@@ -46,7 +46,6 @@
46
46
  float: left;
47
47
  display: none; // none by default, but block on "open" of the menu
48
48
  min-width: 160px;
49
- max-width: 220px;
50
49
  _width: 160px;
51
50
  padding: 4px 0;
52
51
  margin: 0; // override default ul
@@ -93,7 +92,7 @@
93
92
  padding: 3px 15px;
94
93
  clear: both;
95
94
  font-weight: normal;
96
- line-height: 18px;
95
+ line-height: @baseLineHeight;
97
96
  color: @gray;
98
97
  white-space: nowrap;
99
98
  }
@@ -28,6 +28,12 @@ legend {
28
28
  color: @grayDark;
29
29
  border: 0;
30
30
  border-bottom: 1px solid #eee;
31
+
32
+ // Small
33
+ small {
34
+ font-size: @baseLineHeight * .75;
35
+ color: @grayLight;
36
+ }
31
37
  }
32
38
 
33
39
  // Set font for forms
@@ -36,7 +42,13 @@ input,
36
42
  button,
37
43
  select,
38
44
  textarea {
39
- #font > .sans-serif(@baseFontSize,normal,@baseLineHeight);
45
+ #font > .shorthand(@baseFontSize,normal,@baseLineHeight); // Set size, weight, line-height here
46
+ }
47
+ input,
48
+ button,
49
+ select,
50
+ textarea {
51
+ #font > #family > .sans-serif(); // And only set font-family here for those that need it (note the missing label element)
40
52
  }
41
53
 
42
54
  // Identify controls by their labels
@@ -84,13 +96,17 @@ input[type="radio"] {
84
96
  margin: 3px 0;
85
97
  *margin-top: 0; /* IE7 */
86
98
  line-height: normal;
87
- border: 0;
88
99
  cursor: pointer;
89
100
  .border-radius(0);
101
+ border: 0 \9; /* IE9 and down */
102
+ }
103
+ input[type="image"] {
104
+ border: 0;
90
105
  }
91
106
 
92
107
  // Reset the file input to browser defaults
93
108
  input[type="file"] {
109
+ width: auto;
94
110
  padding: initial;
95
111
  line-height: initial;
96
112
  border: initial;
@@ -115,6 +131,11 @@ input[type="file"] {
115
131
  line-height: 28px;
116
132
  }
117
133
 
134
+ // Reset line-height for IE
135
+ input[type="file"] {
136
+ line-height: 18px \9;
137
+ }
138
+
118
139
  // Chrome on Linux and Mobile Safari need background-color
119
140
  select {
120
141
  width: 220px; // default input width + 10px of padding that doesn't get applied
@@ -165,9 +186,11 @@ input[type="hidden"] {
165
186
  }
166
187
 
167
188
  // Radios and checkboxes on same line
189
+ // TODO v3: Convert .inline to .control-inline
168
190
  .radio.inline,
169
191
  .checkbox.inline {
170
192
  display: inline-block;
193
+ padding-top: 5px;
171
194
  margin-bottom: 0;
172
195
  vertical-align: middle;
173
196
  }
@@ -175,11 +198,6 @@ input[type="hidden"] {
175
198
  .checkbox.inline + .checkbox.inline {
176
199
  margin-left: 10px; // space out consecutive inline controls
177
200
  }
178
- // But don't forget to remove their padding on first-child
179
- .controls > .radio.inline:first-child,
180
- .controls > .checkbox.inline:first-child {
181
- padding-top: 0;
182
- }
183
201
 
184
202
 
185
203
 
@@ -198,9 +216,10 @@ textarea:focus {
198
216
  @shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
199
217
  .box-shadow(@shadow);
200
218
  outline: 0;
201
- outline: thin dotted \9; /* IE6-8 */
219
+ outline: thin dotted \9; /* IE6-9 */
202
220
  }
203
221
  input[type="file"]:focus,
222
+ input[type="radio"]:focus,
204
223
  input[type="checkbox"]:focus,
205
224
  select:focus {
206
225
  .box-shadow(none); // override for file inputs
@@ -260,33 +279,6 @@ textarea[readonly] {
260
279
  // FORM FIELD FEEDBACK STATES
261
280
  // --------------------------
262
281
 
263
- // Mixin for form field states
264
- .formFieldState(@textColor: #555, @borderColor: #ccc, @backgroundColor: #f5f5f5) {
265
- // Set the text color
266
- > label,
267
- .help-block,
268
- .help-inline {
269
- color: @textColor;
270
- }
271
- // Style inputs accordingly
272
- input,
273
- select,
274
- textarea {
275
- color: @textColor;
276
- border-color: @borderColor;
277
- &:focus {
278
- border-color: darken(@borderColor, 10%);
279
- .box-shadow(0 0 6px lighten(@borderColor, 20%));
280
- }
281
- }
282
- // Give a small background color for input-prepend/-append
283
- .input-prepend .add-on,
284
- .input-append .add-on {
285
- color: @textColor;
286
- background-color: @backgroundColor;
287
- border-color: @textColor;
288
- }
289
- }
290
282
  // Warning
291
283
  .control-group.warning {
292
284
  .formFieldState(@warningText, @warningText, @warningBackground);
@@ -344,6 +336,7 @@ select:focus:required:invalid {
344
336
  // ---------
345
337
 
346
338
  .help-block {
339
+ display: block; // account for any element using help-block
347
340
  margin-top: 5px;
348
341
  margin-bottom: 0;
349
342
  color: @grayLight;
@@ -412,6 +405,7 @@ select:focus:required:invalid {
412
405
  .border-radius(3px 0 0 3px);
413
406
  }
414
407
  .uneditable-input {
408
+ border-left-color: #eee;
415
409
  border-right-color: #ccc;
416
410
  }
417
411
  .add-on {
@@ -461,6 +455,10 @@ select:focus:required:invalid {
461
455
  display: inline-block;
462
456
  margin-bottom: 0;
463
457
  }
458
+ // Re-hide hidden elements due to specifity
459
+ .hide {
460
+ display: none;
461
+ }
464
462
  }
465
463
  .form-search label,
466
464
  .form-inline label,
@@ -477,28 +475,37 @@ select:focus:required:invalid {
477
475
  .form-inline .input-prepend .add-on {
478
476
  vertical-align: middle;
479
477
  }
478
+ // Inline checkbox/radio labels
479
+ .form-search .radio,
480
+ .form-inline .radio,
481
+ .form-search .checkbox,
482
+ .form-inline .checkbox {
483
+ margin-bottom: 0;
484
+ vertical-align: middle;
485
+ }
480
486
 
481
487
  // Margin to space out fieldsets
482
488
  .control-group {
483
489
  margin-bottom: @baseLineHeight / 2;
484
490
  }
485
491
 
492
+ // Legend collapses margin, so next element is responsible for spacing
493
+ legend + .control-group {
494
+ margin-top: @baseLineHeight;
495
+ -webkit-margin-top-collapse: separate;
496
+ }
497
+
486
498
  // Horizontal-specific styles
487
499
  // --------------------------
488
500
 
489
501
  .form-horizontal {
490
- // Legend collapses margin, so we're relegated to padding
491
- legend + .control-group {
492
- margin-top: @baseLineHeight;
493
- -webkit-margin-top-collapse: separate;
494
- }
495
502
  // Increase spacing between groups
496
503
  .control-group {
497
504
  margin-bottom: @baseLineHeight;
498
505
  .clearfix();
499
506
  }
500
507
  // Float the labels left
501
- .control-group > label {
508
+ .control-label {
502
509
  float: left;
503
510
  width: 140px;
504
511
  padding-top: 5px;
@@ -1,16 +1,32 @@
1
1
  // LABELS
2
2
  // ------
3
3
 
4
+ // Base
4
5
  .label {
5
- padding: 1px 3px 2px;
6
- font-size: @baseFontSize * .75;
6
+ padding: 2px 4px 3px;
7
+ font-size: @baseFontSize * .85;
7
8
  font-weight: bold;
8
9
  color: @white;
9
- text-transform: uppercase;
10
+ text-shadow: 0 -1px 0 rgba(0,0,0,.25);
10
11
  background-color: @grayLight;
11
12
  .border-radius(3px);
12
13
  }
13
- .label-important { background-color: @errorText; }
14
- .label-warning { background-color: @orange; }
15
- .label-success { background-color: @successText; }
16
- .label-info { background-color: @infoText; }
14
+
15
+ // Hover state
16
+ .label:hover {
17
+ color: @white;
18
+ text-decoration: none;
19
+ }
20
+
21
+ // Colors
22
+ .label-important { background-color: @errorText; }
23
+ .label-important:hover { background-color: darken(@errorText, 10%); }
24
+
25
+ .label-warning { background-color: @orange; }
26
+ .label-warning:hover { background-color: darken(@orange, 10%); }
27
+
28
+ .label-success { background-color: @successText; }
29
+ .label-success:hover { background-color: darken(@successText, 10%); }
30
+
31
+ .label-info { background-color: @infoText; }
32
+ .label-info:hover { background-color: darken(@infoText, 10%); }
@@ -9,7 +9,7 @@
9
9
  // Clearfix
10
10
  // --------
11
11
  // For clearing floats like a boss h5bp.com/q
12
- .clearfix() {
12
+ .clearfix {
13
13
  *zoom: 1;
14
14
  &:before,
15
15
  &:after {
@@ -25,7 +25,7 @@
25
25
  // ------------------
26
26
  .tab-focus() {
27
27
  // Default
28
- outline: thin dotted;
28
+ outline: thin dotted #333;
29
29
  // Webkit
30
30
  outline: 5px auto -webkit-focus-ring-color;
31
31
  outline-offset: -2px;
@@ -89,6 +89,15 @@
89
89
  }
90
90
  }
91
91
 
92
+ // Text overflow
93
+ // -------------------------
94
+ // Requires inline-block or block for proper styling
95
+ .text-overflow() {
96
+ overflow: hidden;
97
+ text-overflow: ellipsis;
98
+ white-space: nowrap;
99
+ }
100
+
92
101
 
93
102
 
94
103
  // FONTS
@@ -199,13 +208,13 @@
199
208
  // Setup the mixins to be used
200
209
  .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, @columns) {
201
210
  width: 1% * (@fluidGridColumnWidth * @columns) + (@fluidGridGutterWidth * (@columns - 1));
202
- }
211
+ }
203
212
  .gridColumn(@fluidGridGutterWidth) {
204
213
  float: left;
205
214
  margin-left: @fluidGridGutterWidth;
206
215
  }
207
216
  // Take these values and mixins, and make 'em do their thang
208
- .generate(@gridColumns, @fluidGridColumnWidth, @fluidGridGutterWidth) {
217
+ .generate(@gridColumns, @fluidGridColumnWidth, @fluidGridGutterWidth) {
209
218
  // Row surrounds the columns
210
219
  .row-fluid {
211
220
  width: 100%;
@@ -219,24 +228,22 @@
219
228
  margin-left: 0;
220
229
  }
221
230
  // Default columns
222
- .span1 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 1); }
223
- .span2 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 2); }
224
- .span3 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 3); }
225
- .span4 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 4); }
226
- .span5 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 5); }
227
- .span6 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 6); }
228
- .span7 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 7); }
229
- .span8 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 8); }
230
- .span9 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 9); }
231
- .span10 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 10); }
232
- .span11 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 11); }
233
- .span12 { #fluidGridSystem > .columns(@fluidGridGutterWidth, @fluidGridColumnWidth, 12); }
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); }
234
243
  }
235
244
  }
236
245
  }
237
246
 
238
-
239
-
240
247
  // Input grid system
241
248
  // -------------------------
242
249
  #inputGridSystem {
@@ -263,6 +270,52 @@
263
270
  }
264
271
  }
265
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));
284
+ }
285
+
286
+
287
+
288
+ // Form field states (used in forms.less)
289
+ // --------------------------------------------------
290
+
291
+ // Mixin for form field states
292
+ .formFieldState(@textColor: #555, @borderColor: #ccc, @backgroundColor: #f5f5f5) {
293
+ // Set the text color
294
+ > label,
295
+ .help-block,
296
+ .help-inline {
297
+ color: @textColor;
298
+ }
299
+ // Style inputs accordingly
300
+ input,
301
+ select,
302
+ textarea {
303
+ color: @textColor;
304
+ border-color: @borderColor;
305
+ &:focus {
306
+ border-color: darken(@borderColor, 10%);
307
+ .box-shadow(0 0 6px lighten(@borderColor, 20%));
308
+ }
309
+ }
310
+ // Give a small background color for input-prepend/-append
311
+ .input-prepend .add-on,
312
+ .input-append .add-on {
313
+ color: @textColor;
314
+ background-color: @backgroundColor;
315
+ border-color: @textColor;
316
+ }
317
+ }
318
+
266
319
 
267
320
 
268
321
  // CSS3 PROPERTIES
@@ -313,13 +366,6 @@
313
366
  -o-transform: translate(@x, @y);
314
367
  transform: translate(@x, @y);
315
368
  }
316
- .skew(@x: 0, @y: 0) {
317
- -webkit-transform: translate(@x, @y);
318
- -moz-transform: translate(@x, @y);
319
- -ms-transform: translate(@x, @y);
320
- -o-transform: translate(@x, @y);
321
- transform: translate(@x, @y);
322
- }
323
369
  .skew(@x: 0, @y: 0) {
324
370
  -webkit-transform: skew(@x, @y);
325
371
  -moz-transform: skew(@x, @y);
@@ -327,6 +373,13 @@
327
373
  -o-transform: skew(@x, @y);
328
374
  transform: skew(@x, @y);
329
375
  }
376
+ .translate3d(@x: 0, @y: 0, @z: 0) {
377
+ -webkit-transform: translate(@x, @y, @z);
378
+ -moz-transform: translate(@x, @y, @z);
379
+ -ms-transform: translate(@x, @y, @z);
380
+ -o-transform: translate(@x, @y, @z);
381
+ transform: translate(@x, @y, @z);
382
+ }
330
383
 
331
384
  // Background clipping
332
385
  // Heads up: FF 3.6 and under need "padding" instead of "padding-box"
@@ -1,6 +1,7 @@
1
1
  // MODALS
2
2
  // ------
3
3
 
4
+ // Recalculate z-index where appropriate
4
5
  .modal-open {
5
6
  .dropdown-menu { z-index: @zindexDropdown + @zindexModal; }
6
7
  .dropdown.open { *z-index: @zindexDropdown + @zindexModal; }
@@ -8,6 +9,7 @@
8
9
  .tooltip { z-index: @zindexTooltip + @zindexModal; }
9
10
  }
10
11
 
12
+ // Background
11
13
  .modal-backdrop {
12
14
  position: fixed;
13
15
  top: 0;
@@ -25,6 +27,7 @@
25
27
  .opacity(80);
26
28
  }
27
29
 
30
+ // Base modal
28
31
  .modal {
29
32
  position: fixed;
30
33
  top: 50%;
@@ -53,9 +56,17 @@
53
56
  // Close icon
54
57
  .close { margin-top: 2px; }
55
58
  }
59
+
60
+ // Body (where all modal content resises)
56
61
  .modal-body {
57
62
  padding: 15px;
58
63
  }
64
+ // Remove bottom margin if need be
65
+ .modal-body .modal-form {
66
+ margin-bottom: 0;
67
+ }
68
+
69
+ // Footer (for actions)
59
70
  .modal-footer {
60
71
  padding: 14px 15px 15px;
61
72
  margin-bottom: 0;