twitter-bootstrap-rails 2.0.2 → 2.0.3

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.

Potentially problematic release.


This version of twitter-bootstrap-rails might be problematic. Click here for more details.

Files changed (50) hide show
  1. data/README.md +16 -25
  2. data/lib/generators/bootstrap/install/install_generator.rb +36 -12
  3. data/lib/generators/bootstrap/install/templates/application.css +0 -1
  4. data/lib/generators/bootstrap/install/templates/bootstrap.coffee +1 -10
  5. data/lib/generators/bootstrap/install/templates/bootstrap_and_overrides.less +17 -0
  6. data/lib/generators/bootstrap/layout/templates/layout.html.erb +17 -16
  7. data/lib/generators/bootstrap/layout/templates/layout.html.haml +4 -4
  8. data/lib/generators/bootstrap/layout/templates/layout.html.slim +4 -4
  9. data/lib/generators/bootstrap/themed/templates/_form.html.erb +19 -12
  10. data/lib/generators/bootstrap/themed/templates/edit.html.erb +1 -4
  11. data/lib/generators/bootstrap/themed/templates/index.html.erb +24 -28
  12. data/lib/generators/bootstrap/themed/templates/new.html.erb +1 -3
  13. data/lib/generators/bootstrap/themed/templates/show.html.erb +11 -7
  14. data/lib/twitter/bootstrap/rails/version.rb +1 -1
  15. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-alert.js +8 -5
  16. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-button.js +3 -3
  17. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-carousel.js +5 -2
  18. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-collapse.js +2 -2
  19. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-dropdown.js +2 -2
  20. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-modal.js +6 -5
  21. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-popover.js +2 -2
  22. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-scrollspy.js +2 -2
  23. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-tab.js +2 -2
  24. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-tooltip.js +2 -2
  25. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-transition.js +3 -3
  26. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-typeahead.js +2 -2
  27. data/vendor/toolkit/twitter/bootstrap/bootstrap.less +1 -1
  28. data/vendor/toolkit/twitter/bootstrap/breadcrumbs.less +1 -1
  29. data/vendor/toolkit/twitter/bootstrap/button-groups.less +4 -2
  30. data/vendor/toolkit/twitter/bootstrap/buttons.less +25 -7
  31. data/vendor/toolkit/twitter/bootstrap/code.less +13 -0
  32. data/vendor/toolkit/twitter/bootstrap/dropdowns.less +1 -2
  33. data/vendor/toolkit/twitter/bootstrap/forms.less +51 -44
  34. data/vendor/toolkit/twitter/bootstrap/labels.less +23 -7
  35. data/vendor/toolkit/twitter/bootstrap/mixins.less +79 -26
  36. data/vendor/toolkit/twitter/bootstrap/modals.less +11 -0
  37. data/vendor/toolkit/twitter/bootstrap/navbar.less +13 -6
  38. data/vendor/toolkit/twitter/bootstrap/navs.less +21 -12
  39. data/vendor/toolkit/twitter/bootstrap/reset.less +1 -1
  40. data/vendor/toolkit/twitter/bootstrap/responsive.less +10 -6
  41. data/vendor/toolkit/twitter/bootstrap/sprites.less +9 -7
  42. data/vendor/toolkit/twitter/bootstrap/tables.less +14 -3
  43. data/vendor/toolkit/twitter/bootstrap/thumbnails.less +2 -2
  44. data/vendor/toolkit/twitter/bootstrap/type.less +3 -2
  45. data/vendor/toolkit/twitter/bootstrap/variables.less +15 -7
  46. data/vendor/toolkit/twitter/bootstrap_base.less +2 -0
  47. metadata +13 -14
  48. data/lib/generators/bootstrap/install/templates/bootstrap.less +0 -6
  49. data/vendor/assets/stylesheets/twitter/bootstrap.css.less +0 -1
  50. data/vendor/toolkit/twitter/bootstrap.less +0 -1
@@ -1,7 +1,7 @@
1
1
  module Twitter
2
2
  module Bootstrap
3
3
  module Rails
4
- VERSION = "2.0.2"
4
+ VERSION = "2.0.3"
5
5
  end
6
6
  end
7
7
  end
@@ -1,5 +1,5 @@
1
1
  /* ==========================================================
2
- * bootstrap-alert.js v2.0.0
2
+ * bootstrap-alert.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#alerts
4
4
  * ==========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -51,11 +51,14 @@
51
51
 
52
52
  $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())
53
53
 
54
- $parent.removeClass('in')
54
+ $parent
55
+ .trigger('close')
56
+ .removeClass('in')
55
57
 
56
58
  function removeElement() {
57
- $parent.remove()
58
- $parent.trigger('closed')
59
+ $parent
60
+ .trigger('closed')
61
+ .remove()
59
62
  }
60
63
 
61
64
  $.support.transition && $parent.hasClass('fade') ?
@@ -88,4 +91,4 @@
88
91
  $('body').on('click.alert.data-api', dismiss, Alert.prototype.close)
89
92
  })
90
93
 
91
- }( window.jQuery )
94
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /* ============================================================
2
- * bootstrap-button.js v2.0.0
2
+ * bootstrap-button.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#buttons
4
4
  * ============================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -91,8 +91,8 @@
91
91
 
92
92
  $(function () {
93
93
  $('body').on('click.button.data-api', '[data-toggle^=button]', function ( e ) {
94
- $(e.target).button('toggle')
94
+ $(e.currentTarget).button('toggle')
95
95
  })
96
96
  })
97
97
 
98
- }( window.jQuery )
98
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /* ==========================================================
2
- * bootstrap-carousel.js v2.0.0
2
+ * bootstrap-carousel.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#carousel
4
4
  * ==========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -61,6 +61,7 @@
61
61
 
62
62
  , pause: function () {
63
63
  clearInterval(this.interval)
64
+ this.interval = null
64
65
  return this
65
66
  }
66
67
 
@@ -82,6 +83,8 @@
82
83
  , fallback = type == 'next' ? 'first' : 'last'
83
84
  , that = this
84
85
 
86
+ if (!$next.length) return
87
+
85
88
  this.sliding = true
86
89
 
87
90
  isCycling && this.pause()
@@ -151,4 +154,4 @@
151
154
  })
152
155
  })
153
156
 
154
- }( window.jQuery )
157
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /* =============================================================
2
- * bootstrap-collapse.js v2.0.0
2
+ * bootstrap-collapse.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#collapse
4
4
  * =============================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -133,4 +133,4 @@
133
133
  })
134
134
  })
135
135
 
136
- }( window.jQuery )
136
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /* ============================================================
2
- * bootstrap-dropdown.js v2.0.0
2
+ * bootstrap-dropdown.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#dropdowns
4
4
  * ============================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -89,4 +89,4 @@
89
89
  $('body').on('click.dropdown.data-api', toggle, Dropdown.prototype.toggle)
90
90
  })
91
91
 
92
- }( window.jQuery )
92
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /* =========================================================
2
- * bootstrap-modal.js v2.0.0
2
+ * bootstrap-modal.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#modals
4
4
  * =========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -26,7 +26,7 @@
26
26
  * ====================== */
27
27
 
28
28
  var Modal = function ( content, options ) {
29
- this.options = $.extend({}, $.fn.modal.defaults, options)
29
+ this.options = options
30
30
  this.$element = $(content)
31
31
  .delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this))
32
32
  }
@@ -177,16 +177,17 @@
177
177
  return this.each(function () {
178
178
  var $this = $(this)
179
179
  , data = $this.data('modal')
180
- , options = typeof option == 'object' && option
180
+ , options = $.extend({}, $.fn.modal.defaults, $this.data(), typeof option == 'object' && option)
181
181
  if (!data) $this.data('modal', (data = new Modal(this, options)))
182
182
  if (typeof option == 'string') data[option]()
183
- else data.show()
183
+ else if (options.show) data.show()
184
184
  })
185
185
  }
186
186
 
187
187
  $.fn.modal.defaults = {
188
188
  backdrop: true
189
189
  , keyboard: true
190
+ , show: true
190
191
  }
191
192
 
192
193
  $.fn.modal.Constructor = Modal
@@ -206,4 +207,4 @@
206
207
  })
207
208
  })
208
209
 
209
- }( window.jQuery )
210
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /* ===========================================================
2
- * bootstrap-popover.js v2.0.0
2
+ * bootstrap-popover.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#popovers
4
4
  * ===========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -92,4 +92,4 @@
92
92
  , template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
93
93
  })
94
94
 
95
- }( window.jQuery )
95
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /* =============================================================
2
- * bootstrap-scrollspy.js v2.0.0
2
+ * bootstrap-scrollspy.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#scrollspy
4
4
  * =============================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -122,4 +122,4 @@
122
122
  })
123
123
  })
124
124
 
125
- }( window.jQuery )
125
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /* ========================================================
2
- * bootstrap-tab.js v2.0.0
2
+ * bootstrap-tab.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#tabs
4
4
  * ========================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -127,4 +127,4 @@
127
127
  })
128
128
  })
129
129
 
130
- }( window.jQuery )
130
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /* ===========================================================
2
- * bootstrap-tooltip.js v2.0.0
2
+ * bootstrap-tooltip.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#tooltips
4
4
  * Inspired by the original jQuery.tipsy by Jason Frame
5
5
  * ===========================================================
@@ -267,4 +267,4 @@
267
267
  , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
268
268
  }
269
269
 
270
- }( window.jQuery )
270
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /* ===================================================
2
- * bootstrap-transition.js v2.0.0
2
+ * bootstrap-transition.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#transitions
4
4
  * ===================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -47,5 +47,5 @@
47
47
  })()
48
48
 
49
49
  })
50
-
51
- }( window.jQuery )
50
+
51
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /* =============================================================
2
- * bootstrap-typeahead.js v2.0.0
2
+ * bootstrap-typeahead.js v2.0.1
3
3
  * http://twitter.github.com/bootstrap/javascript.html#typeahead
4
4
  * =============================================================
5
5
  * Copyright 2012 Twitter, Inc.
@@ -268,4 +268,4 @@
268
268
  })
269
269
  })
270
270
 
271
- }( window.jQuery )
271
+ }( window.jQuery );
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Bootstrap v2.0.0
2
+ * Bootstrap v2.0.1
3
3
  *
4
4
  * Copyright 2012 Twitter, Inc
5
5
  * Licensed under the Apache License v2.0
@@ -9,7 +9,7 @@
9
9
  .border-radius(3px);
10
10
  .box-shadow(inset 0 1px 0 @white);
11
11
  li {
12
- display: inline;
12
+ display: inline-block;
13
13
  text-shadow: 0 1px 0 @white;
14
14
  }
15
15
  .divider {
@@ -29,7 +29,7 @@
29
29
  position: relative;
30
30
  float: left;
31
31
  margin-left: -1px;
32
- .border-radius(0px);
32
+ .border-radius(0);
33
33
  }
34
34
  // Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match
35
35
  .btn-group .btn:first-child {
@@ -133,7 +133,8 @@
133
133
  .btn-primary,
134
134
  .btn-danger,
135
135
  .btn-info,
136
- .btn-success {
136
+ .btn-success,
137
+ .btn-inverse {
137
138
  .caret {
138
139
  border-top-color: @white;
139
140
  .opacity(75);
@@ -144,3 +145,4 @@
144
145
  .btn-small .caret {
145
146
  margin-top: 4px;
146
147
  }
148
+
@@ -9,12 +9,14 @@
9
9
  .btn {
10
10
  display: inline-block;
11
11
  padding: 4px 10px 4px;
12
+ margin-bottom: 0; // For input.btn
12
13
  font-size: @baseFontSize;
13
14
  line-height: @baseLineHeight;
14
15
  color: @grayDark;
15
16
  text-align: center;
16
17
  text-shadow: 0 1px 1px rgba(255,255,255,.75);
17
- #gradient > .vertical-three-colors(@white, @white, 25%, darken(@white, 10%)); // Don't use .gradientbar() here since it does a three-color gradient
18
+ vertical-align: middle;
19
+ .buttonBackground(@white, darken(@white, 10%));
18
20
  border: 1px solid #ccc;
19
21
  border-bottom-color: #bbb;
20
22
  .border-radius(4px);
@@ -23,6 +25,7 @@
23
25
  cursor: pointer;
24
26
 
25
27
  // Give IE7 some love
28
+ .reset-filter();
26
29
  .ie7-restore-left-whitespace();
27
30
  }
28
31
 
@@ -51,7 +54,6 @@
51
54
  .box-shadow(@shadow);
52
55
  background-color: darken(@white, 10%);
53
56
  background-color: darken(@white, 15%) e("\9");
54
- color: rgba(0,0,0,.5);
55
57
  outline: 0;
56
58
  }
57
59
 
@@ -76,7 +78,7 @@
76
78
  line-height: normal;
77
79
  .border-radius(5px);
78
80
  }
79
- .btn-large .icon {
81
+ .btn-large [class^="icon-"] {
80
82
  margin-top: 1px;
81
83
  }
82
84
 
@@ -86,10 +88,17 @@
86
88
  font-size: @baseFontSize - 2px;
87
89
  line-height: @baseLineHeight - 2px;
88
90
  }
89
- .btn-small .icon {
91
+ .btn-small [class^="icon-"] {
90
92
  margin-top: -1px;
91
93
  }
92
94
 
95
+ // Mini
96
+ .btn-mini {
97
+ padding: 2px 6px;
98
+ font-size: @baseFontSize - 2px;
99
+ line-height: @baseLineHeight - 4px;
100
+ }
101
+
93
102
 
94
103
  // Alternate buttons
95
104
  // --------------------------------------------------
@@ -105,7 +114,9 @@
105
114
  .btn-success,
106
115
  .btn-success:hover,
107
116
  .btn-info,
108
- .btn-info:hover {
117
+ .btn-info:hover,
118
+ .btn-inverse,
119
+ .btn-inverse:hover {
109
120
  text-shadow: 0 -1px 0 rgba(0,0,0,.25);
110
121
  color: @white;
111
122
  }
@@ -114,7 +125,8 @@
114
125
  .btn-warning.active,
115
126
  .btn-danger.active,
116
127
  .btn-success.active,
117
- .btn-info.active {
128
+ .btn-info.active,
129
+ .btn-dark.active {
118
130
  color: rgba(255,255,255,.75);
119
131
  }
120
132
 
@@ -139,6 +151,10 @@
139
151
  .btn-info {
140
152
  .buttonBackground(#5bc0de, #2f96b4);
141
153
  }
154
+ // Inverse appears as dark gray
155
+ .btn-inverse {
156
+ .buttonBackground(#454545, #262626);
157
+ }
142
158
 
143
159
 
144
160
  // Cross-browser Jank
@@ -146,8 +162,10 @@
146
162
 
147
163
  button.btn,
148
164
  input[type="submit"].btn {
165
+
166
+ // Firefox 3.6 only I believe
149
167
  &::-moz-focus-inner {
150
- padding: 0;
168
+ padding: 0;
151
169
  border: 0;
152
170
  }
153
171
 
@@ -11,12 +11,16 @@ pre {
11
11
  color: @grayDark;
12
12
  .border-radius(3px);
13
13
  }
14
+
15
+ // Inline code
14
16
  code {
15
17
  padding: 3px 4px;
16
18
  color: #d14;
17
19
  background-color: #f7f7f9;
18
20
  border: 1px solid #e1e1e8;
19
21
  }
22
+
23
+ // Blocks of code
20
24
  pre {
21
25
  display: block;
22
26
  padding: (@baseLineHeight - 1) / 2;
@@ -30,6 +34,7 @@ pre {
30
34
  white-space: pre;
31
35
  white-space: pre-wrap;
32
36
  word-break: break-all;
37
+ word-wrap: break-word;
33
38
 
34
39
  // Make prettyprint styles more spaced out for readability
35
40
  &.prettyprint {
@@ -39,6 +44,14 @@ pre {
39
44
  // Account for some code outputs that place code tags in pre tags
40
45
  code {
41
46
  padding: 0;
47
+ color: inherit;
42
48
  background-color: transparent;
49
+ border: 0;
43
50
  }
44
51
  }
52
+
53
+ // Enable scrollable blocks of code
54
+ .pre-scrollable {
55
+ max-height: 340px;
56
+ overflow-y: scroll;
57
+ }
@@ -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
- .border-radius(0px); /* mirror bootstrap commit 9b9e1d3 reversing IE9 hack and use mixin instead */
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);
@@ -309,7 +301,7 @@ select:focus:required:invalid {
309
301
  border-color: #ee5f5b;
310
302
  &:focus {
311
303
  border-color: darken(#ee5f5b, 10%);
312
- .box-shadow(0 0 6px lighten(#ee5f5b, 20%));
304
+ .box-shadow(0 0 6px lighten(#ee5f5b, 20%));
313
305
  }
314
306
  }
315
307
 
@@ -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,7 +405,8 @@ select:focus:required:invalid {
412
405
  .border-radius(3px 0 0 3px);
413
406
  }
414
407
  .uneditable-input {
415
- border-right-color: #ccc;
408
+ border-left-color: #eee;
409
+ border-right-color: #ccc;
416
410
  }
417
411
  .add-on {
418
412
  margin-right: 0;
@@ -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;