anjlab-bootstrap-rails 2.3.1.2 → 3.0.0.0.alpha1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (103) hide show
  1. checksums.yaml +4 -4
  2. data/.gitmodules +3 -0
  3. data/Rakefile +42 -26
  4. data/lib/bootstrap-rails.rb +5 -6
  5. data/lib/bootstrap-rails/engine.rb +2 -9
  6. data/lib/bootstrap-rails/version.rb +1 -1
  7. data/test/test_helper.rb +2 -2
  8. data/vendor/assets/fonts/twitter/glyphiconshalflings-regular.eot +0 -0
  9. data/vendor/assets/fonts/twitter/glyphiconshalflings-regular.otf +0 -0
  10. data/vendor/assets/fonts/twitter/glyphiconshalflings-regular.svg +175 -0
  11. data/vendor/assets/fonts/twitter/glyphiconshalflings-regular.ttf +0 -0
  12. data/vendor/assets/fonts/twitter/glyphiconshalflings-regular.woff +0 -0
  13. data/vendor/assets/javascripts/twitter/bootstrap.js +4 -5
  14. data/vendor/assets/javascripts/twitter/bootstrap/affix.js +50 -47
  15. data/vendor/assets/javascripts/twitter/bootstrap/alert.js +32 -35
  16. data/vendor/assets/javascripts/twitter/bootstrap/button.js +37 -37
  17. data/vendor/assets/javascripts/twitter/bootstrap/carousel.js +123 -127
  18. data/vendor/assets/javascripts/twitter/bootstrap/collapse.js +81 -95
  19. data/vendor/assets/javascripts/twitter/bootstrap/dropdown.js +61 -81
  20. data/vendor/assets/javascripts/twitter/bootstrap/modal.js +146 -151
  21. data/vendor/assets/javascripts/twitter/bootstrap/popover.js +53 -58
  22. data/vendor/assets/javascripts/twitter/bootstrap/scrollspy.js +99 -105
  23. data/vendor/assets/javascripts/twitter/bootstrap/tab.js +70 -81
  24. data/vendor/assets/javascripts/twitter/bootstrap/tooltip.js +246 -254
  25. data/vendor/assets/javascripts/twitter/bootstrap/transition.js +24 -37
  26. data/vendor/assets/stylesheets/twitter/bootstrap.scss +1 -1
  27. data/vendor/{frameworks/twitter/bootstrap/accordion.scss → assets/stylesheets/twitter/bootstrap/_accordion.scss} +2 -2
  28. data/vendor/assets/stylesheets/twitter/bootstrap/_alerts.scss +92 -0
  29. data/vendor/assets/stylesheets/twitter/bootstrap/_badges.scss +58 -0
  30. data/vendor/assets/stylesheets/twitter/bootstrap/_bootstrap.scss +64 -0
  31. data/vendor/assets/stylesheets/twitter/bootstrap/_breadcrumbs.scss +28 -0
  32. data/vendor/assets/stylesheets/twitter/bootstrap/_button-groups.scss +170 -0
  33. data/vendor/assets/stylesheets/twitter/bootstrap/_buttons.scss +160 -0
  34. data/vendor/assets/stylesheets/twitter/bootstrap/_carousel.scss +191 -0
  35. data/vendor/{frameworks/twitter/bootstrap/close.scss → assets/stylesheets/twitter/bootstrap/_close.scss} +7 -6
  36. data/vendor/{frameworks/twitter/bootstrap/code.scss → assets/stylesheets/twitter/bootstrap/_code.scss} +14 -14
  37. data/vendor/{frameworks/twitter/bootstrap/component-animations.scss → assets/stylesheets/twitter/bootstrap/_component-animations.scss} +1 -0
  38. data/vendor/{frameworks/twitter/bootstrap/dropdowns.scss → assets/stylesheets/twitter/bootstrap/_dropdowns.scss} +46 -57
  39. data/vendor/assets/stylesheets/twitter/bootstrap/_forms.scss +464 -0
  40. data/vendor/assets/stylesheets/twitter/bootstrap/_glyphicons.scss +200 -0
  41. data/vendor/assets/stylesheets/twitter/bootstrap/_grid.scss +65 -0
  42. data/vendor/assets/stylesheets/twitter/bootstrap/_jumbotron.scss +32 -0
  43. data/vendor/assets/stylesheets/twitter/bootstrap/_labels.scss +70 -0
  44. data/vendor/assets/stylesheets/twitter/bootstrap/_list-group.scss +96 -0
  45. data/vendor/{frameworks/twitter/bootstrap/media.scss → assets/stylesheets/twitter/bootstrap/_media.scss} +0 -1
  46. data/vendor/assets/stylesheets/twitter/bootstrap/_mixins.scss +510 -0
  47. data/vendor/assets/stylesheets/twitter/bootstrap/_modals.scss +137 -0
  48. data/vendor/assets/stylesheets/twitter/bootstrap/_navbar.scss +356 -0
  49. data/vendor/assets/stylesheets/twitter/bootstrap/_navs.scss +249 -0
  50. data/vendor/assets/stylesheets/twitter/bootstrap/_normalize.scss +396 -0
  51. data/vendor/assets/stylesheets/twitter/bootstrap/_pager.scss +54 -0
  52. data/vendor/assets/stylesheets/twitter/bootstrap/_pagination.scss +87 -0
  53. data/vendor/assets/stylesheets/twitter/bootstrap/_panels.scss +96 -0
  54. data/vendor/{frameworks/twitter/bootstrap/popovers.scss → assets/stylesheets/twitter/bootstrap/_popovers.scss} +32 -32
  55. data/vendor/assets/stylesheets/twitter/bootstrap/_print.scss +74 -0
  56. data/vendor/{frameworks/twitter/bootstrap/progress-bars.scss → assets/stylesheets/twitter/bootstrap/_progress-bars.scss} +40 -44
  57. data/vendor/assets/stylesheets/twitter/bootstrap/_responsive-utilities.scss +77 -0
  58. data/vendor/assets/stylesheets/twitter/bootstrap/_scaffolding.scss +83 -0
  59. data/vendor/assets/stylesheets/twitter/bootstrap/_tables.scss +242 -0
  60. data/vendor/assets/stylesheets/twitter/bootstrap/_thumbnails.scss +43 -0
  61. data/vendor/{frameworks/twitter/bootstrap/tooltip.scss → assets/stylesheets/twitter/bootstrap/_tooltip.scss} +20 -19
  62. data/vendor/assets/stylesheets/twitter/bootstrap/_type.scss +253 -0
  63. data/vendor/{frameworks/twitter/bootstrap/utilities.scss → assets/stylesheets/twitter/bootstrap/_utilities.scss} +17 -5
  64. data/vendor/assets/stylesheets/twitter/bootstrap/_variables.scss +416 -0
  65. data/vendor/{frameworks/twitter/bootstrap/wells.scss → assets/stylesheets/twitter/bootstrap/_wells.scss} +5 -5
  66. metadata +49 -53
  67. data/lib/bootstrap-rails/ie_hex_str.rb +0 -16
  68. data/test/ie_hex_str_test.rb +0 -26
  69. data/vendor/assets/images/twitter/glyphicons-halflings-white.png +0 -0
  70. data/vendor/assets/images/twitter/glyphicons-halflings.png +0 -0
  71. data/vendor/assets/javascripts/twitter/bootstrap/typeahead.js +0 -335
  72. data/vendor/assets/stylesheets/twitter/bootstrap-responsive.scss +0 -1
  73. data/vendor/frameworks/twitter/bootstrap.scss +0 -1
  74. data/vendor/frameworks/twitter/bootstrap/alerts.scss +0 -79
  75. data/vendor/frameworks/twitter/bootstrap/bootstrap.scss +0 -63
  76. data/vendor/frameworks/twitter/bootstrap/breadcrumbs.scss +0 -24
  77. data/vendor/frameworks/twitter/bootstrap/button-groups.scss +0 -230
  78. data/vendor/frameworks/twitter/bootstrap/buttons.scss +0 -228
  79. data/vendor/frameworks/twitter/bootstrap/carousel.scss +0 -158
  80. data/vendor/frameworks/twitter/bootstrap/forms.scss +0 -690
  81. data/vendor/frameworks/twitter/bootstrap/grid.scss +0 -21
  82. data/vendor/frameworks/twitter/bootstrap/hero-unit.scss +0 -25
  83. data/vendor/frameworks/twitter/bootstrap/labels-badges.scss +0 -83
  84. data/vendor/frameworks/twitter/bootstrap/layouts.scss +0 -16
  85. data/vendor/frameworks/twitter/bootstrap/mixins.scss +0 -704
  86. data/vendor/frameworks/twitter/bootstrap/modals.scss +0 -95
  87. data/vendor/frameworks/twitter/bootstrap/navbar.scss +0 -496
  88. data/vendor/frameworks/twitter/bootstrap/navs.scss +0 -409
  89. data/vendor/frameworks/twitter/bootstrap/pager.scss +0 -43
  90. data/vendor/frameworks/twitter/bootstrap/pagination.scss +0 -123
  91. data/vendor/frameworks/twitter/bootstrap/reset.scss +0 -216
  92. data/vendor/frameworks/twitter/bootstrap/responsive-1200px-min.scss +0 -28
  93. data/vendor/frameworks/twitter/bootstrap/responsive-767px-max.scss +0 -189
  94. data/vendor/frameworks/twitter/bootstrap/responsive-768px-979px.scss +0 -19
  95. data/vendor/frameworks/twitter/bootstrap/responsive-navbar.scss +0 -189
  96. data/vendor/frameworks/twitter/bootstrap/responsive-utilities.scss +0 -59
  97. data/vendor/frameworks/twitter/bootstrap/responsive.scss +0 -48
  98. data/vendor/frameworks/twitter/bootstrap/scaffolding.scss +0 -53
  99. data/vendor/frameworks/twitter/bootstrap/sprites.scss +0 -197
  100. data/vendor/frameworks/twitter/bootstrap/tables.scss +0 -235
  101. data/vendor/frameworks/twitter/bootstrap/thumbnails.scss +0 -53
  102. data/vendor/frameworks/twitter/bootstrap/type.scss +0 -246
  103. data/vendor/frameworks/twitter/bootstrap/variables.scss +0 -295
@@ -1,158 +0,0 @@
1
- //
2
- // Carousel
3
- // --------------------------------------------------
4
-
5
-
6
- .carousel {
7
- position: relative;
8
- margin-bottom: $baseLineHeight;
9
- line-height: 1;
10
- }
11
-
12
- .carousel-inner {
13
- overflow: hidden;
14
- width: 100%;
15
- position: relative;
16
- }
17
-
18
- .carousel-inner {
19
-
20
- > .item {
21
- display: none;
22
- position: relative;
23
- @include transition(.6s ease-in-out left);
24
-
25
- // Account for jankitude on images
26
- > img,
27
- > a > img {
28
- display: block;
29
- line-height: 1;
30
- }
31
- }
32
-
33
- > .active,
34
- > .next,
35
- > .prev { display: block; }
36
-
37
- > .active {
38
- left: 0;
39
- }
40
-
41
- > .next,
42
- > .prev {
43
- position: absolute;
44
- top: 0;
45
- width: 100%;
46
- }
47
-
48
- > .next {
49
- left: 100%;
50
- }
51
- > .prev {
52
- left: -100%;
53
- }
54
- > .next.left,
55
- > .prev.right {
56
- left: 0;
57
- }
58
-
59
- > .active.left {
60
- left: -100%;
61
- }
62
- > .active.right {
63
- left: 100%;
64
- }
65
-
66
- }
67
-
68
- // Left/right controls for nav
69
- // ---------------------------
70
-
71
- .carousel-control {
72
- position: absolute;
73
- top: 40%;
74
- left: 15px;
75
- width: 40px;
76
- height: 40px;
77
- margin-top: -20px;
78
- font-size: 60px;
79
- font-weight: 100;
80
- line-height: 30px;
81
- color: $white;
82
- text-align: center;
83
- background: $grayDarker;
84
- border: 3px solid $white;
85
- @include border-radius(23px);
86
- @include opacity(50);
87
-
88
- // we can't have this transition here
89
- // because webkit cancels the carousel
90
- // animation if you trip this while
91
- // in the middle of another animation
92
- // ;_;
93
- // .transition(opacity .2s linear);
94
-
95
- // Reposition the right one
96
- &.right {
97
- left: auto;
98
- right: 15px;
99
- }
100
-
101
- // Hover/focus state
102
- &:hover,
103
- &:focus {
104
- color: $white;
105
- text-decoration: none;
106
- @include opacity(90);
107
- }
108
- }
109
-
110
- // Carousel indicator pips
111
- // -----------------------------
112
- .carousel-indicators {
113
- position: absolute;
114
- top: 15px;
115
- right: 15px;
116
- z-index: 5;
117
- margin: 0;
118
- list-style: none;
119
-
120
- li {
121
- display: block;
122
- float: left;
123
- width: 10px;
124
- height: 10px;
125
- margin-left: 5px;
126
- text-indent: -999px;
127
- background-color: #ccc;
128
- background-color: rgba(255,255,255,.25);
129
- border-radius: 5px;
130
- }
131
- .active {
132
- background-color: #fff;
133
- }
134
- }
135
-
136
- // Caption for text below images
137
- // -----------------------------
138
-
139
- .carousel-caption {
140
- position: absolute;
141
- left: 0;
142
- right: 0;
143
- bottom: 0;
144
- padding: 15px;
145
- background: $grayDark;
146
- background: rgba(0,0,0,.75);
147
- }
148
- .carousel-caption h4,
149
- .carousel-caption p {
150
- color: $white;
151
- line-height: $baseLineHeight;
152
- }
153
- .carousel-caption h4 {
154
- margin: 0 0 5px;
155
- }
156
- .carousel-caption p {
157
- margin-bottom: 0;
158
- }
@@ -1,690 +0,0 @@
1
- //
2
- // Forms
3
- // --------------------------------------------------
4
-
5
-
6
- // GENERAL STYLES
7
- // --------------
8
-
9
- // Make all forms have space below them
10
- form {
11
- margin: 0 0 $baseLineHeight;
12
- }
13
-
14
- fieldset {
15
- padding: 0;
16
- margin: 0;
17
- border: 0;
18
- }
19
-
20
- // Groups of fields with labels on top (legends)
21
- legend {
22
- display: block;
23
- width: 100%;
24
- padding: 0;
25
- margin-bottom: $baseLineHeight;
26
- font-size: $baseFontSize * 1.5;
27
- line-height: $baseLineHeight * 2;
28
- color: $grayDark;
29
- border: 0;
30
- border-bottom: 1px solid #e5e5e5;
31
-
32
- // Small
33
- small {
34
- font-size: $baseLineHeight * .75;
35
- color: $grayLight;
36
- }
37
- }
38
-
39
- // Set font for forms
40
- label,
41
- input,
42
- button,
43
- select,
44
- textarea {
45
- @include font-shorthand($baseFontSize,normal,$baseLineHeight); // Set size, weight, line-height here
46
- }
47
- input,
48
- button,
49
- select,
50
- textarea {
51
- font-family: $baseFontFamily; // And only set font-family here for those that need it (note the missing label element)
52
- }
53
-
54
- // Identify controls by their labels
55
- label {
56
- display: block;
57
- margin-bottom: 5px;
58
- }
59
-
60
- // Form controls
61
- // -------------------------
62
-
63
- // Shared size and type resets
64
- select,
65
- textarea,
66
- input[type="text"],
67
- input[type="password"],
68
- input[type="datetime"],
69
- input[type="datetime-local"],
70
- input[type="date"],
71
- input[type="month"],
72
- input[type="time"],
73
- input[type="week"],
74
- input[type="number"],
75
- input[type="email"],
76
- input[type="url"],
77
- input[type="search"],
78
- input[type="tel"],
79
- input[type="color"],
80
- .uneditable-input {
81
- display: inline-block;
82
- height: $baseLineHeight;
83
- padding: 4px 6px;
84
- margin-bottom: $baseLineHeight / 2;
85
- font-size: $baseFontSize;
86
- line-height: $baseLineHeight;
87
- color: $gray;
88
- @include border-radius($inputBorderRadius);
89
- vertical-align: middle;
90
- }
91
-
92
- // Reset appearance properties for textual inputs and textarea
93
- // Declare width for legacy (can't be on input[type=*] selectors or it's too specific)
94
- input,
95
- textarea,
96
- .uneditable-input {
97
- width: 206px; // plus 12px padding and 2px border
98
- }
99
- // Reset height since textareas have rows
100
- textarea {
101
- height: auto;
102
- }
103
- // Everything else
104
- textarea,
105
- input[type="text"],
106
- input[type="password"],
107
- input[type="datetime"],
108
- input[type="datetime-local"],
109
- input[type="date"],
110
- input[type="month"],
111
- input[type="time"],
112
- input[type="week"],
113
- input[type="number"],
114
- input[type="email"],
115
- input[type="url"],
116
- input[type="search"],
117
- input[type="tel"],
118
- input[type="color"],
119
- .uneditable-input {
120
- background-color: $inputBackground;
121
- border: 1px solid $inputBorder;
122
- @include box-shadow(inset 0 1px 1px rgba(0,0,0,.075));
123
- @include transition((border linear .2s, box-shadow linear .2s));
124
-
125
- // Focus state
126
- &:focus {
127
- border-color: rgba(82,168,236,.8);
128
- outline: 0;
129
- outline: thin dotted \9; /* IE6-9 */
130
- @include box-shadow((inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6)));
131
- }
132
- }
133
-
134
- // Position radios and checkboxes better
135
- input[type="radio"],
136
- input[type="checkbox"] {
137
- margin: 4px 0 0;
138
- *margin-top: 0; /* IE7 */
139
- margin-top: 1px \9; /* IE8-9 */
140
- line-height: normal;
141
- }
142
-
143
- // Reset width of input images, buttons, radios, checkboxes
144
- input[type="file"],
145
- input[type="image"],
146
- input[type="submit"],
147
- input[type="reset"],
148
- input[type="button"],
149
- input[type="radio"],
150
- input[type="checkbox"] {
151
- width: auto; // Override of generic input selector
152
- }
153
-
154
- // Set the height of select and file controls to match text inputs
155
- select,
156
- input[type="file"] {
157
- height: $inputHeight; /* In IE7, the height of the select element cannot be changed by height, only font-size */
158
- *margin-top: 4px; /* For IE7, add top margin to align select with labels */
159
- line-height: $inputHeight;
160
- }
161
-
162
- // Make select elements obey height by applying a border
163
- select {
164
- width: 220px; // default input width + 10px of padding that doesn't get applied
165
- border: 1px solid $inputBorder;
166
- background-color: $inputBackground; // Chrome on Linux and Mobile Safari need background-color
167
- }
168
-
169
- // Make multiple select elements height not fixed
170
- select[multiple],
171
- select[size] {
172
- height: auto;
173
- }
174
-
175
- // Focus for select, file, radio, and checkbox
176
- select:focus,
177
- input[type="file"]:focus,
178
- input[type="radio"]:focus,
179
- input[type="checkbox"]:focus {
180
- @include tab-focus();
181
- }
182
-
183
-
184
- // Uneditable inputs
185
- // -------------------------
186
-
187
- // Make uneditable inputs look inactive
188
- .uneditable-input,
189
- .uneditable-textarea {
190
- color: $grayLight;
191
- background-color: darken($inputBackground, 1%);
192
- border-color: $inputBorder;
193
- @include box-shadow(inset 0 1px 2px rgba(0,0,0,.025));
194
- cursor: not-allowed;
195
- }
196
-
197
- // For text that needs to appear as an input but should not be an input
198
- .uneditable-input {
199
- overflow: hidden; // prevent text from wrapping, but still cut it off like an input does
200
- white-space: nowrap;
201
- }
202
-
203
- // Make uneditable textareas behave like a textarea
204
- .uneditable-textarea {
205
- width: auto;
206
- height: auto;
207
- }
208
-
209
-
210
- // Placeholder
211
- // -------------------------
212
-
213
- // Placeholder text gets special styles because when browsers invalidate entire lines if it doesn't understand a selector
214
- input,
215
- textarea {
216
- @include placeholder();
217
- }
218
-
219
-
220
- // CHECKBOXES & RADIOS
221
- // -------------------
222
-
223
- // Indent the labels to position radios/checkboxes as hanging
224
- .radio,
225
- .checkbox {
226
- min-height: $baseLineHeight; // clear the floating input if there is no label text
227
- padding-left: 20px;
228
- }
229
- .radio input[type="radio"],
230
- .checkbox input[type="checkbox"] {
231
- float: left;
232
- margin-left: -20px;
233
- }
234
-
235
- // Move the options list down to align with labels
236
- .controls > .radio:first-child,
237
- .controls > .checkbox:first-child {
238
- padding-top: 5px; // has to be padding because margin collaspes
239
- }
240
-
241
- // Radios and checkboxes on same line
242
- // TODO v3: Convert .inline to .control-inline
243
- .radio.inline,
244
- .checkbox.inline {
245
- display: inline-block;
246
- padding-top: 5px;
247
- margin-bottom: 0;
248
- vertical-align: middle;
249
- }
250
- .radio.inline + .radio.inline,
251
- .checkbox.inline + .checkbox.inline {
252
- margin-left: 10px; // space out consecutive inline controls
253
- }
254
-
255
-
256
-
257
- // INPUT SIZES
258
- // -----------
259
-
260
- // General classes for quick sizes
261
- .input-mini { width: 60px; }
262
- .input-small { width: 90px; }
263
- .input-medium { width: 150px; }
264
- .input-large { width: 210px; }
265
- .input-xlarge { width: 270px; }
266
- .input-xxlarge { width: 530px; }
267
-
268
- // Grid style input sizes
269
- input[class*="span"],
270
- select[class*="span"],
271
- textarea[class*="span"],
272
- .uneditable-input[class*="span"],
273
- // Redeclare since the fluid row class is more specific
274
- .row-fluid input[class*="span"],
275
- .row-fluid select[class*="span"],
276
- .row-fluid textarea[class*="span"],
277
- .row-fluid .uneditable-input[class*="span"] {
278
- float: none;
279
- margin-left: 0;
280
- }
281
- // Ensure input-prepend/append never wraps
282
- .input-append input[class*="span"],
283
- .input-append .uneditable-input[class*="span"],
284
- .input-prepend input[class*="span"],
285
- .input-prepend .uneditable-input[class*="span"],
286
- .row-fluid input[class*="span"],
287
- .row-fluid select[class*="span"],
288
- .row-fluid textarea[class*="span"],
289
- .row-fluid .uneditable-input[class*="span"],
290
- .row-fluid .input-prepend [class*="span"],
291
- .row-fluid .input-append [class*="span"] {
292
- display: inline-block;
293
- }
294
-
295
-
296
-
297
- // GRID SIZING FOR INPUTS
298
- // ----------------------
299
-
300
- // Grid sizes
301
- @include grid-input($gridColumnWidth, $gridGutterWidth);
302
-
303
- // Control row for multiple inputs per line
304
- .controls-row {
305
- @include clearfix(); // Clear the float from controls
306
- }
307
-
308
- // Float to collapse white-space for proper grid alignment
309
- .controls-row [class*="span"],
310
- // Redeclare the fluid grid collapse since we undo the float for inputs
311
- .row-fluid .controls-row [class*="span"] {
312
- float: left;
313
- }
314
- // Explicity set top padding on all checkboxes/radios, not just first-child
315
- .controls-row .checkbox[class*="span"],
316
- .controls-row .radio[class*="span"] {
317
- padding-top: 5px;
318
- }
319
-
320
-
321
-
322
-
323
- // DISABLED STATE
324
- // --------------
325
-
326
- // Disabled and read-only inputs
327
- input[disabled],
328
- select[disabled],
329
- textarea[disabled],
330
- input[readonly],
331
- select[readonly],
332
- textarea[readonly] {
333
- cursor: not-allowed;
334
- background-color: $inputDisabledBackground;
335
- }
336
- // Explicitly reset the colors here
337
- input[type="radio"][disabled],
338
- input[type="checkbox"][disabled],
339
- input[type="radio"][readonly],
340
- input[type="checkbox"][readonly] {
341
- background-color: transparent;
342
- }
343
-
344
-
345
-
346
-
347
- // FORM FIELD FEEDBACK STATES
348
- // --------------------------
349
-
350
- // Warning
351
- .control-group.warning {
352
- @include form-field-state($warningText, $warningText, $warningBackground);
353
- }
354
- // Error
355
- .control-group.error {
356
- @include form-field-state($errorText, $errorText, $errorBackground);
357
- }
358
- // Success
359
- .control-group.success {
360
- @include form-field-state($successText, $successText, $successBackground);
361
- }
362
- // Success
363
- .control-group.info {
364
- @include form-field-state($infoText, $infoText, $infoBackground);
365
- }
366
-
367
- // HTML5 invalid states
368
- // Shares styles with the .control-group.error above
369
- input:focus:invalid,
370
- textarea:focus:invalid,
371
- select:focus:invalid {
372
- color: #b94a48;
373
- border-color: #ee5f5b;
374
- &:focus {
375
- border-color: darken(#ee5f5b, 10%);
376
- $shadow: 0 0 6px lighten(#ee5f5b, 20%);
377
- @include box-shadow($shadow);
378
- }
379
- }
380
-
381
-
382
-
383
- // FORM ACTIONS
384
- // ------------
385
-
386
- .form-actions {
387
- padding: ($baseLineHeight - 1) 20px $baseLineHeight;
388
- margin-top: $baseLineHeight;
389
- margin-bottom: $baseLineHeight;
390
- background-color: $formActionsBackground;
391
- border-top: 1px solid #e5e5e5;
392
- @include clearfix(); // Adding clearfix to allow for .pull-right button containers
393
- }
394
-
395
-
396
-
397
- // HELP TEXT
398
- // ---------
399
-
400
- .help-block,
401
- .help-inline {
402
- color: lighten($textColor, 15%); // lighten the text some for contrast
403
- }
404
-
405
- .help-block {
406
- display: block; // account for any element using help-block
407
- margin-bottom: $baseLineHeight / 2;
408
- }
409
-
410
- .help-inline {
411
- display: inline-block;
412
- @include ie7-inline-block();
413
- vertical-align: middle;
414
- padding-left: 5px;
415
- }
416
-
417
-
418
-
419
- // INPUT GROUPS
420
- // ------------
421
-
422
- // Allow us to put symbols and text within the input field for a cleaner look
423
- .input-append,
424
- .input-prepend {
425
- display: inline-block;
426
- margin-bottom: $baseLineHeight / 2;
427
- vertical-align: middle;
428
- font-size: 0; // white space collapse hack
429
- white-space: nowrap; // Prevent span and input from separating
430
-
431
- // Reset the white space collapse hack
432
- input,
433
- select,
434
- .uneditable-input,
435
- .dropdown-menu,
436
- .popover {
437
- font-size: $baseFontSize;
438
- }
439
-
440
- input,
441
- select,
442
- .uneditable-input {
443
- 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
444
- margin-bottom: 0; // prevent bottom margin from screwing up alignment in stacked forms
445
- *margin-left: 0;
446
- vertical-align: top;
447
- @include border-radius(0 $inputBorderRadius $inputBorderRadius 0);
448
- // Make input on top when focused so blue border and shadow always show
449
- &:focus {
450
- z-index: 2;
451
- }
452
- }
453
- .add-on {
454
- display: inline-block;
455
- width: auto;
456
- height: $baseLineHeight;
457
- min-width: 16px;
458
- padding: 4px 5px;
459
- font-size: $baseFontSize;
460
- font-weight: normal;
461
- line-height: $baseLineHeight;
462
- text-align: center;
463
- text-shadow: 0 1px 0 $white;
464
- background-color: $grayLighter;
465
- border: 1px solid #ccc;
466
- }
467
- .add-on,
468
- .btn,
469
- .btn-group > .dropdown-toggle {
470
- vertical-align: top;
471
- @include border-radius(0);
472
- }
473
- .active {
474
- background-color: lighten($green, 30);
475
- border-color: $green;
476
- }
477
- }
478
-
479
- .input-prepend {
480
- .add-on,
481
- .btn {
482
- margin-right: -1px;
483
- }
484
- .add-on:first-child,
485
- .btn:first-child {
486
- // FYI, `.btn:first-child` accounts for a button group that's prepended
487
- @include border-radius($inputBorderRadius 0 0 $inputBorderRadius);
488
- }
489
- }
490
-
491
- .input-append {
492
- input,
493
- select,
494
- .uneditable-input {
495
- @include border-radius($inputBorderRadius 0 0 $inputBorderRadius);
496
- + .btn-group .btn:last-child {
497
- @include border-radius(0 $inputBorderRadius $inputBorderRadius 0);
498
- }
499
- }
500
- .add-on,
501
- .btn,
502
- .btn-group {
503
- margin-left: -1px;
504
- }
505
- .add-on:last-child,
506
- .btn:last-child,
507
- .btn-group:last-child > .dropdown-toggle {
508
- @include border-radius(0 $inputBorderRadius $inputBorderRadius 0);
509
- }
510
- }
511
-
512
- // Remove all border-radius for inputs with both prepend and append
513
- .input-prepend.input-append {
514
- input,
515
- select,
516
- .uneditable-input {
517
- @include border-radius(0);
518
- + .btn-group .btn {
519
- @include border-radius(0 $inputBorderRadius $inputBorderRadius 0);
520
- }
521
- }
522
- .add-on:first-child,
523
- .btn:first-child {
524
- margin-right: -1px;
525
- @include border-radius($inputBorderRadius 0 0 $inputBorderRadius);
526
- }
527
- .add-on:last-child,
528
- .btn:last-child {
529
- margin-left: -1px;
530
- @include border-radius(0 $inputBorderRadius $inputBorderRadius 0);
531
- }
532
- .btn-group:first-child {
533
- margin-left: 0;
534
- }
535
- }
536
-
537
-
538
-
539
-
540
- // SEARCH FORM
541
- // -----------
542
-
543
- input.search-query {
544
- padding-right: 14px;
545
- padding-right: 4px \9;
546
- padding-left: 14px;
547
- padding-left: 4px \9; /* IE7-8 doesn't have border-radius, so don't indent the padding */
548
- margin-bottom: 0; // Remove the default margin on all inputs
549
- @include border-radius(15px);
550
- }
551
-
552
- /* Allow for input prepend/append in search forms */
553
- .form-search .input-append .search-query,
554
- .form-search .input-prepend .search-query {
555
- @include border-radius(0); // Override due to specificity
556
- }
557
- .form-search .input-append .search-query {
558
- @include border-radius(14px 0 0 14px);
559
- }
560
- .form-search .input-append .btn {
561
- @include border-radius(0 14px 14px 0);
562
- }
563
- .form-search .input-prepend .search-query {
564
- @include border-radius(0 14px 14px 0);
565
- }
566
- .form-search .input-prepend .btn {
567
- @include border-radius(14px 0 0 14px);
568
- }
569
-
570
-
571
-
572
-
573
- // HORIZONTAL & VERTICAL FORMS
574
- // ---------------------------
575
-
576
- // Common properties
577
- // -----------------
578
-
579
- .form-search,
580
- .form-inline,
581
- .form-horizontal {
582
- input,
583
- textarea,
584
- select,
585
- .help-inline,
586
- .uneditable-input,
587
- .input-prepend,
588
- .input-append {
589
- display: inline-block;
590
- @include ie7-inline-block();
591
- margin-bottom: 0;
592
- vertical-align: middle;
593
- }
594
- // Re-hide hidden elements due to specifity
595
- .hide {
596
- display: none;
597
- }
598
- }
599
- .form-search label,
600
- .form-inline label,
601
- .form-search .btn-group,
602
- .form-inline .btn-group {
603
- display: inline-block;
604
- }
605
- // Remove margin for input-prepend/-append
606
- .form-search .input-append,
607
- .form-inline .input-append,
608
- .form-search .input-prepend,
609
- .form-inline .input-prepend {
610
- margin-bottom: 0;
611
- }
612
- // Inline checkbox/radio labels (remove padding on left)
613
- .form-search .radio,
614
- .form-search .checkbox,
615
- .form-inline .radio,
616
- .form-inline .checkbox {
617
- padding-left: 0;
618
- margin-bottom: 0;
619
- vertical-align: middle;
620
- }
621
- // Remove float and margin, set to inline-block
622
- .form-search .radio input[type="radio"],
623
- .form-search .checkbox input[type="checkbox"],
624
- .form-inline .radio input[type="radio"],
625
- .form-inline .checkbox input[type="checkbox"] {
626
- float: left;
627
- margin-right: 3px;
628
- margin-left: 0;
629
- }
630
-
631
-
632
- // Margin to space out fieldsets
633
- .control-group {
634
- margin-bottom: $baseLineHeight / 2;
635
- }
636
-
637
- // Legend collapses margin, so next element is responsible for spacing
638
- legend + .control-group {
639
- margin-top: $baseLineHeight;
640
- -webkit-margin-top-collapse: separate;
641
- }
642
-
643
- // Horizontal-specific styles
644
- // --------------------------
645
-
646
- .form-horizontal {
647
- // Increase spacing between groups
648
- .control-group {
649
- margin-bottom: $baseLineHeight;
650
- @include clearfix();
651
- }
652
- // Float the labels left
653
- .control-label {
654
- float: left;
655
- width: $horizontalComponentOffset - 20;
656
- padding-top: 5px;
657
- text-align: right;
658
- }
659
- // Move over all input controls and content
660
- .controls {
661
- // Super jank IE7 fix to ensure the inputs in .input-append and input-prepend
662
- // don't inherit the margin of the parent, in this case .controls
663
- *display: inline-block;
664
- *padding-left: 20px;
665
- margin-left: $horizontalComponentOffset;
666
- *margin-left: 0;
667
- &:first-child {
668
- *padding-left: $horizontalComponentOffset;
669
- }
670
- }
671
- // Remove bottom margin on block level help text since that's accounted for on .control-group
672
- .help-block {
673
- margin-bottom: 0;
674
- }
675
- // And apply it only to .help-block instances that follow a form control
676
- input,
677
- select,
678
- textarea,
679
- .uneditable-input,
680
- .input-prepend,
681
- .input-append {
682
- + .help-block {
683
- margin-top: $baseLineHeight / 2;
684
- }
685
- }
686
- // Move over buttons in .form-actions to align with .controls
687
- .form-actions {
688
- padding-left: $horizontalComponentOffset;
689
- }
690
- }