twitter-bootstrap-rails 2.1.3 → 2.1.4

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 (48) hide show
  1. data/README.md +6 -3
  2. data/app/helpers/bootstrap_flash_helper.rb +3 -1
  3. data/app/helpers/glyph_helper.rb +12 -0
  4. data/app/views/twitter-bootstrap/_breadcrumbs.html.erb +3 -3
  5. data/lib/generators/bootstrap/install/templates/bootstrap_and_overrides.less +8 -12
  6. data/lib/generators/bootstrap/layout/templates/layout.html.erb +15 -17
  7. data/lib/generators/bootstrap/layout/templates/layout.html.haml +13 -14
  8. data/lib/generators/bootstrap/layout/templates/layout.html.slim +13 -14
  9. data/lib/generators/bootstrap/themed/themed_generator.rb +16 -5
  10. data/lib/twitter/bootstrap/rails/version.rb +1 -1
  11. data/vendor/assets/images/twitter/bootstrap/glyphicons-halflings.png +0 -0
  12. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-affix.js +1 -1
  13. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-alert.js +1 -1
  14. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-button.js +2 -2
  15. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-carousel.js +1 -1
  16. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-collapse.js +1 -1
  17. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-dropdown.js +3 -3
  18. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-modal.js +1 -1
  19. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-popover.js +1 -1
  20. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-scrollspy.js +1 -1
  21. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-tab.js +1 -1
  22. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-tooltip.js +1 -1
  23. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-transition.js +1 -1
  24. data/vendor/assets/javascripts/twitter/bootstrap/bootstrap-typeahead.js +2 -2
  25. data/vendor/toolkit/font-awesome-ie7.less +245 -0
  26. data/vendor/toolkit/fontawesome.less +12 -29
  27. data/vendor/toolkit/twitter/bootstrap/bootstrap.less +1 -1
  28. data/vendor/toolkit/twitter/bootstrap/button-groups.less +3 -2
  29. data/vendor/toolkit/twitter/bootstrap/buttons.less +24 -4
  30. data/vendor/toolkit/twitter/bootstrap/component-animations.less +0 -1
  31. data/vendor/toolkit/twitter/bootstrap/dropdowns.less +2 -2
  32. data/vendor/toolkit/twitter/bootstrap/forms.less +30 -15
  33. data/vendor/toolkit/twitter/bootstrap/mixins.less +21 -11
  34. data/vendor/toolkit/twitter/bootstrap/modals.less +3 -2
  35. data/vendor/toolkit/twitter/bootstrap/navbar.less +22 -16
  36. data/vendor/toolkit/twitter/bootstrap/pager.less +6 -3
  37. data/vendor/toolkit/twitter/bootstrap/pagination.less +17 -17
  38. data/vendor/toolkit/twitter/bootstrap/progress-bars.less +1 -1
  39. data/vendor/toolkit/twitter/bootstrap/reset.less +5 -2
  40. data/vendor/toolkit/twitter/bootstrap/responsive-767px-max.less +27 -20
  41. data/vendor/toolkit/twitter/bootstrap/responsive-navbar.less +12 -1
  42. data/vendor/toolkit/twitter/bootstrap/responsive.less +1 -1
  43. data/vendor/toolkit/twitter/bootstrap/scaffolding.less +5 -4
  44. data/vendor/toolkit/twitter/bootstrap/sprites.less +11 -5
  45. data/vendor/toolkit/twitter/bootstrap/tables.less +26 -6
  46. data/vendor/toolkit/twitter/bootstrap/type.less +18 -3
  47. data/vendor/toolkit/twitter/bootstrap/variables.less +10 -8
  48. metadata +15 -13
@@ -23,37 +23,20 @@
23
23
  */
24
24
 
25
25
  @font-face {
26
- font-family: 'FontAwesome';
27
- src: url(@fontAwesomeEotPath);
28
- src: url('@{fontAwesomeEotPath}?#iefix'),
29
- url(@fontAwesomeWoffPath),
30
- url(@fontAwesomeTtfPath),
31
- url('@{fontAwesomeSvgPath}#FontAwesome');
26
+ font-family: "FontAwesome";
27
+ src: url("@{fontAwesomeEotPath}");
28
+ src: url("@{fontAwesomeEotPath}#iefix") format("embedded-opentype"),
29
+ url("@{fontAwesomeWoffPath}") format("woff"),
30
+ url("@{fontAwesomeTtfPath}") format("truetype"),
31
+ url("@{fontAwesomeSvgPath}") format("svg");
32
32
  font-weight: normal;
33
33
  font-style: normal;
34
34
  }
35
35
 
36
- /* sprites.less reset */
37
- [class^="icon-"],
38
- [class*=" icon-"] {
39
- display: inline;
40
- width: auto;
41
- height: auto;
42
- line-height: inherit;
43
- vertical-align: baseline;
44
- background-image: none;
45
- background-position: 0% 0%;
46
- background-repeat: repeat;
47
- }
48
- li[class^="icon-"],
49
- li[class*=" icon-"] {
50
- display: block;
51
- }
52
-
53
36
  /* Font Awesome styles
54
37
  ------------------------------------------------------- */
55
38
  [class^="icon-"]:before,
56
- [class*=" icon-"]:before {
39
+ [class*="icon-"]:before {
57
40
  font-family: FontAwesome;
58
41
  font-weight: normal;
59
42
  font-style: normal;
@@ -62,7 +45,7 @@ li[class*=" icon-"] {
62
45
  }
63
46
 
64
47
  a [class^="icon-"],
65
- a [class*=" icon-"] {
48
+ a [class*="icon-"] {
66
49
  display: inline-block;
67
50
  text-decoration: inherit;
68
51
  }
@@ -75,7 +58,7 @@ a [class*=" icon-"] {
75
58
 
76
59
  .btn, .nav-tabs {
77
60
  [class^="icon-"],
78
- [class*=" icon-"] {
61
+ [class*="icon-"] {
79
62
  /* keeps button heights with and without icons the same */
80
63
  line-height: .9em;
81
64
  }
@@ -83,7 +66,7 @@ a [class*=" icon-"] {
83
66
 
84
67
  li {
85
68
  [class^="icon-"],
86
- [class*=" icon-"] {
69
+ [class*="icon-"] {
87
70
  display: inline-block;
88
71
  width: 1.25em;
89
72
  text-align: center;
@@ -102,7 +85,7 @@ ul.icons {
102
85
 
103
86
  li {
104
87
  [class^="icon-"],
105
- [class*=" icon-"] {
88
+ [class*="icon-"] {
106
89
  width: .8em;
107
90
  }
108
91
  .icon-large:before,
@@ -148,7 +131,7 @@ ul.icons {
148
131
  .icon-play-circle:before { content: "\f01d"; }
149
132
  .icon-repeat:before { content: "\f01e"; }
150
133
 
151
- /* \f020 is not a valid unicode character. all shifted one down */
134
+ /* \f020 doesn't work in Safari. all shifted one down */
152
135
  .icon-refresh:before { content: "\f021"; }
153
136
  .icon-list-alt:before { content: "\f022"; }
154
137
  .icon-lock:before { content: "\f023"; }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Bootstrap v2.1.0
2
+ * Bootstrap v2.1.1
3
3
  *
4
4
  * Copyright 2012 Twitter, Inc
5
5
  * Licensed under the Apache License v2.0
@@ -7,6 +7,7 @@
7
7
  .btn-group {
8
8
  position: relative;
9
9
  font-size: 0; // remove as part 1 of font-size inline-block hack
10
+ vertical-align: middle; // match .btn alignment given font-size hack above
10
11
  white-space: nowrap; // prevent buttons from wrapping when in tight spaces (e.g., the table on the tests page)
11
12
  .ie7-restore-left-whitespace();
12
13
  }
@@ -119,7 +120,7 @@
119
120
  .btn-group > .btn + .dropdown-toggle {
120
121
  padding-left: 8px;
121
122
  padding-right: 8px;
122
- .box-shadow(~"inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05)");
123
+ .box-shadow(inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05));
123
124
  *padding-top: 5px;
124
125
  *padding-bottom: 5px;
125
126
  }
@@ -146,7 +147,7 @@
146
147
  // Remove the gradient and set the same inset shadow as the :active state
147
148
  .dropdown-toggle {
148
149
  background-image: none;
149
- .box-shadow(~"inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)");
150
+ .box-shadow(inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05));
150
151
  }
151
152
 
152
153
  // Keep the hover's background when dropdown is open
@@ -24,7 +24,7 @@
24
24
  border-bottom-color: darken(@btnBorder, 10%);
25
25
  .border-radius(4px);
26
26
  .ie7-restore-left-whitespace(); // Give IE7 some love
27
- .box-shadow(~"inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05)");
27
+ .box-shadow(inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05));
28
28
 
29
29
  // Hover state
30
30
  &:hover {
@@ -51,7 +51,7 @@
51
51
  background-color: darken(@white, 15%) e("\9");
52
52
  background-image: none;
53
53
  outline: 0;
54
- .box-shadow(~"inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)");
54
+ .box-shadow(inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05));
55
55
  }
56
56
 
57
57
  // Disabled state
@@ -96,10 +96,13 @@
96
96
  .btn-mini {
97
97
  padding: 2px 6px;
98
98
  font-size: @baseFontSize - 3px;
99
- line-height: @baseLineHeight - 4px;
99
+ line-height: @baseLineHeight - 3px;
100
100
  }
101
101
 
102
+
102
103
  // Block button
104
+ // -------------------------
105
+
103
106
  .btn-block {
104
107
  display: block;
105
108
  width: 100%;
@@ -107,10 +110,22 @@
107
110
  padding-right: 0;
108
111
  .box-sizing(border-box);
109
112
  }
113
+
114
+ // Vertically space out multiple block buttons
110
115
  .btn-block + .btn-block {
111
116
  margin-top: 5px;
112
117
  }
113
118
 
119
+ // Specificity overrides
120
+ input[type="submit"],
121
+ input[type="reset"],
122
+ input[type="button"] {
123
+ &.btn-block {
124
+ width: 100%;
125
+ }
126
+ }
127
+
128
+
114
129
 
115
130
  // Alternate buttons
116
131
  // --------------------------------------------------
@@ -193,7 +208,8 @@ input[type="submit"].btn {
193
208
 
194
209
  // Make a button look and behave like a link
195
210
  .btn-link,
196
- .btn-link:active {
211
+ .btn-link:active,
212
+ .btn-link[disabled] {
197
213
  background-color: transparent;
198
214
  background-image: none;
199
215
  .box-shadow(none);
@@ -209,3 +225,7 @@ input[type="submit"].btn {
209
225
  text-decoration: underline;
210
226
  background-color: transparent;
211
227
  }
228
+ .btn-link[disabled]:hover {
229
+ color: @grayDark;
230
+ text-decoration: none;
231
+ }
@@ -15,7 +15,6 @@
15
15
  position: relative;
16
16
  height: 0;
17
17
  overflow: hidden;
18
- overflow: visible \9;
19
18
  .transition(height .35s ease);
20
19
  &.in {
21
20
  height: auto;
@@ -148,7 +148,7 @@
148
148
  .caret {
149
149
  border-top: 0;
150
150
  border-bottom: 4px solid @black;
151
- content: "\2191";
151
+ content: "";
152
152
  }
153
153
  // Different positioning for bottom up menu
154
154
  .dropdown-menu {
@@ -172,7 +172,7 @@
172
172
  -moz-border-radius: 0 6px 6px 6px;
173
173
  border-radius: 0 6px 6px 6px;
174
174
  }
175
- .dropdown-submenu:hover .dropdown-menu {
175
+ .dropdown-submenu:hover > .dropdown-menu {
176
176
  display: block;
177
177
  }
178
178
 
@@ -91,8 +91,9 @@ input[type="color"],
91
91
  // Reset appearance properties for textual inputs and textarea
92
92
  // Declare width for legacy (can't be on input[type=*] selectors or it's too specific)
93
93
  input,
94
- textarea {
95
- width: 210px;
94
+ textarea,
95
+ .uneditable-input {
96
+ width: 206px; // plus 12px padding and 2px border
96
97
  }
97
98
  // Reset height since textareas have rows
98
99
  textarea {
@@ -125,7 +126,7 @@ input[type="color"],
125
126
  border-color: rgba(82,168,236,.8);
126
127
  outline: 0;
127
128
  outline: thin dotted \9; /* IE6-9 */
128
- .box-shadow(~"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6)");
129
+ .box-shadow(inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6));
129
130
  }
130
131
  }
131
132
 
@@ -161,7 +162,7 @@ input[type="file"] {
161
162
  // Make select elements obey height by applying a border
162
163
  select {
163
164
  width: 220px; // default input width + 10px of padding that doesn't get applied
164
- border: 1px solid #bbb;
165
+ border: 1px solid @inputBorder;
165
166
  background-color: @inputBackground; // Chrome on Linux and Mobile Safari need background-color
166
167
  }
167
168
 
@@ -209,7 +210,7 @@ input[type="checkbox"]:focus {
209
210
  // Placeholder
210
211
  // -------------------------
211
212
 
212
- // Placeholder text gets special styles; can't be bundled together though for some reason
213
+ // Placeholder text gets special styles because when browsers invalidate entire lines if it doesn’t understand a selector
213
214
  input,
214
215
  textarea {
215
216
  .placeholder();
@@ -349,6 +350,10 @@ input[type="checkbox"][readonly] {
349
350
  .control-group.success {
350
351
  .formFieldState(@successText, @successText, @successBackground);
351
352
  }
353
+ // Success
354
+ .control-group.info {
355
+ .formFieldState(@infoText, @infoText, @infoBackground);
356
+ }
352
357
 
353
358
  // HTML5 invalid states
354
359
  // Shares styles with the .control-group.error above
@@ -441,7 +446,6 @@ select:focus:required:invalid {
441
446
  }
442
447
  .add-on,
443
448
  .btn {
444
- margin-left: -1px;
445
449
  vertical-align: top;
446
450
  .border-radius(0);
447
451
  }
@@ -466,6 +470,10 @@ select:focus:required:invalid {
466
470
  .uneditable-input {
467
471
  .border-radius(@inputBorderRadius 0 0 @inputBorderRadius);
468
472
  }
473
+ .add-on,
474
+ .btn {
475
+ margin-left: -1px;
476
+ }
469
477
  .add-on:last-child,
470
478
  .btn:last-child {
471
479
  .border-radius(0 @inputBorderRadius @inputBorderRadius 0);
@@ -510,16 +518,16 @@ input.search-query {
510
518
  .border-radius(0); // Override due to specificity
511
519
  }
512
520
  .form-search .input-append .search-query {
513
- .border-radius(14px 0 0 14px)
521
+ .border-radius(14px 0 0 14px);
514
522
  }
515
523
  .form-search .input-append .btn {
516
- .border-radius(0 14px 14px 0)
524
+ .border-radius(0 14px 14px 0);
517
525
  }
518
526
  .form-search .input-prepend .search-query {
519
- .border-radius(0 14px 14px 0)
527
+ .border-radius(0 14px 14px 0);
520
528
  }
521
529
  .form-search .input-prepend .btn {
522
- .border-radius(14px 0 0 14px)
530
+ .border-radius(14px 0 0 14px);
523
531
  }
524
532
 
525
533
 
@@ -607,7 +615,7 @@ legend + .control-group {
607
615
  // Float the labels left
608
616
  .control-label {
609
617
  float: left;
610
- width: 140px;
618
+ width: @horizontalComponentOffset - 20;
611
619
  padding-top: 5px;
612
620
  text-align: right;
613
621
  }
@@ -617,19 +625,26 @@ legend + .control-group {
617
625
  // don't inherit the margin of the parent, in this case .controls
618
626
  *display: inline-block;
619
627
  *padding-left: 20px;
620
- margin-left: 160px;
628
+ margin-left: @horizontalComponentOffset;
621
629
  *margin-left: 0;
622
630
  &:first-child {
623
- *padding-left: 160px;
631
+ *padding-left: @horizontalComponentOffset;
624
632
  }
625
633
  }
626
634
  // Remove bottom margin on block level help text since that's accounted for on .control-group
627
635
  .help-block {
628
- margin-top: @baseLineHeight / 2;
629
636
  margin-bottom: 0;
630
637
  }
638
+ // And apply it only to .help-block instances that follow a form control
639
+ input,
640
+ select,
641
+ textarea {
642
+ + .help-block {
643
+ margin-top: @baseLineHeight / 2;
644
+ }
645
+ }
631
646
  // Move over buttons in .form-actions to align with .controls
632
647
  .form-actions {
633
- padding-left: 160px;
648
+ padding-left: @horizontalComponentOffset;
634
649
  }
635
650
  }
@@ -175,14 +175,15 @@
175
175
  select,
176
176
  textarea {
177
177
  color: @textColor;
178
+ }
179
+ input,
180
+ select,
181
+ textarea {
178
182
  border-color: @borderColor;
179
183
  .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work
180
184
  &:focus {
181
185
  border-color: darken(@borderColor, 10%);
182
- // Write out in full since the lighten() function isn't easily escaped
183
- -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@borderColor, 20%);
184
- -moz-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@borderColor, 20%);
185
- box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@borderColor, 20%);
186
+ .box-shadow(inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@borderColor, 20%));
186
187
  }
187
188
  }
188
189
  // Give a small background color for input-prepend/-append
@@ -247,10 +248,12 @@
247
248
  }
248
249
 
249
250
  // Drop shadows
250
- .box-shadow(@shadow) {
251
- -webkit-box-shadow: @shadow;
252
- -moz-box-shadow: @shadow;
253
- box-shadow: @shadow;
251
+ .box-shadow(@shadowA, @shadowB:X, ...){
252
+ // Multiple shadow solution from http://toekneestuck.com/blog/2012/05/15/less-css-arguments-variable/
253
+ @props: ~`"@{arguments}".replace(/[\[\]]|\,\sX/g, '')`;
254
+ -webkit-box-shadow: @props;
255
+ -moz-box-shadow: @props;
256
+ box-shadow: @props;
254
257
  }
255
258
 
256
259
  // Transitions
@@ -260,6 +263,12 @@
260
263
  -o-transition: @transition;
261
264
  transition: @transition;
262
265
  }
266
+ .transition-delay(@transition-delay) {
267
+ -webkit-transition-delay: @transition-delay;
268
+ -moz-transition-delay: @transition-delay;
269
+ -o-transition-delay: @transition-delay;
270
+ transition-delay: @transition-delay;
271
+ }
263
272
 
264
273
  // Transformations
265
274
  .rotate(@degrees) {
@@ -286,7 +295,7 @@
286
295
  .skew(@x, @y) {
287
296
  -webkit-transform: skew(@x, @y);
288
297
  -moz-transform: skew(@x, @y);
289
- -ms-transform: skew(@x, @y);
298
+ -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twitter/bootstrap/issues/4885
290
299
  -o-transform: skew(@x, @y);
291
300
  transform: skew(@x, @y);
292
301
  }
@@ -432,7 +441,7 @@
432
441
  background-color: mix(@midColor, @endColor, 80%);
433
442
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), color-stop(@colorStop, @midColor), to(@endColor));
434
443
  background-image: -webkit-linear-gradient(@startColor, @midColor @colorStop, @endColor);
435
- background-image: -moz-linear-gradient(top, @startColor, @midColor @colorStop*100%, @endColor);
444
+ background-image: -moz-linear-gradient(top, @startColor, @midColor @colorStop, @endColor);
436
445
  background-image: -o-linear-gradient(@startColor, @midColor @colorStop, @endColor);
437
446
  background-image: linear-gradient(@startColor, @midColor @colorStop, @endColor);
438
447
  background-repeat: no-repeat;
@@ -446,7 +455,7 @@
446
455
  background-image: -o-radial-gradient(circle, @innerColor, @outerColor);
447
456
  background-repeat: no-repeat;
448
457
  }
449
- .striped(@color, @angle: 45deg) {
458
+ .striped(@color: #555, @angle: 45deg) {
450
459
  background-color: @color;
451
460
  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));
452
461
  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);
@@ -575,6 +584,7 @@
575
584
 
576
585
  [class*="span"] {
577
586
  float: left;
587
+ min-height: 1px; // prevent collapsing columns
578
588
  margin-left: @gridGutterWidth;
579
589
  }
580
590
 
@@ -3,8 +3,9 @@
3
3
  // --------------------------------------------------
4
4
 
5
5
 
6
- // Recalculate z-index where appropriate
7
- .modal-open {
6
+ // Recalculate z-index where appropriate,
7
+ // but only apply to elements within modal
8
+ .modal-open .modal {
8
9
  .dropdown-menu { z-index: @zindexDropdown + @zindexModal; }
9
10
  .dropdown.open { *z-index: @zindexDropdown + @zindexModal; }
10
11
  .popover { z-index: @zindexPopover + @zindexModal; }
@@ -27,6 +27,9 @@
27
27
  border: 1px solid @navbarBorder;
28
28
  .border-radius(4px);
29
29
  .box-shadow(0 1px 4px rgba(0,0,0,.065));
30
+
31
+ // Prevent floats from breaking the navbar
32
+ .clearfix();
30
33
  }
31
34
 
32
35
  // Set width to auto for default container
@@ -87,13 +90,16 @@
87
90
  // -------------------------
88
91
  .navbar .btn,
89
92
  .navbar .btn-group {
90
- .navbarVerticalAlign(28px); // Vertically center in navbar
93
+ .navbarVerticalAlign(30px); // Vertically center in navbar
91
94
  }
92
- .navbar .btn-group .btn {
93
- margin: 0; // then undo the margin here so we don't accidentally double it
95
+ .navbar .btn-group .btn,
96
+ .navbar .input-prepend .btn,
97
+ .navbar .input-append .btn {
98
+ margin-top: 0; // then undo the margin here so we don't accidentally double it
94
99
  }
95
100
 
96
101
  // Navbar forms
102
+ // -------------------------
97
103
  .navbar-form {
98
104
  margin-bottom: 0; // remove default bottom margin
99
105
  .clearfix();
@@ -125,6 +131,7 @@
125
131
  }
126
132
 
127
133
  // Navbar search
134
+ // -------------------------
128
135
  .navbar-search {
129
136
  position: relative;
130
137
  float: left;
@@ -166,12 +173,12 @@
166
173
  z-index: @zindexFixedNavbar;
167
174
  margin-bottom: 0; // remove 18px margin for default navbar
168
175
  }
169
- .navbar-fixed-top,
170
- .navbar-fixed-bottom,
171
- .navbar-static-top {
172
- .navbar-inner {
173
- border: 0;
174
- }
176
+ .navbar-fixed-top .navbar-inner,
177
+ .navbar-static-top .navbar-inner {
178
+ border-width: 0 0 1px;
179
+ }
180
+ .navbar-fixed-bottom .navbar-inner {
181
+ border-width: 1px 0 0;
175
182
  }
176
183
  .navbar-fixed-top .navbar-inner,
177
184
  .navbar-fixed-bottom .navbar-inner {
@@ -195,7 +202,7 @@
195
202
  .navbar-fixed-top,
196
203
  .navbar-static-top {
197
204
  .navbar-inner {
198
- .box-shadow(~"inset 0 -1px 0 rgba(0,0,0,.1), 0 1px 10px rgba(0,0,0,.1)");
205
+ .box-shadow(inset 0 -1px 0 rgba(0,0,0,.1), 0 1px 10px rgba(0,0,0,.1));
199
206
  }
200
207
  }
201
208
 
@@ -203,7 +210,7 @@
203
210
  .navbar-fixed-bottom {
204
211
  bottom: 0;
205
212
  .navbar-inner {
206
- .box-shadow(~"inset 0 1px 0 rgba(0,0,0,.1), 0 -1px 10px rgba(0,0,0,.1)");
213
+ .box-shadow(inset 0 1px 0 rgba(0,0,0,.1), 0 -1px 10px rgba(0,0,0,.1));
207
214
  }
208
215
  }
209
216
 
@@ -221,6 +228,7 @@
221
228
  }
222
229
  .navbar .nav.pull-right {
223
230
  float: right; // redeclare due to specificity
231
+ margin-right: 0; // remove margin on float right nav
224
232
  }
225
233
  .navbar .nav > li {
226
234
  float: left;
@@ -254,9 +262,7 @@
254
262
  color: @navbarLinkColorActive;
255
263
  text-decoration: none;
256
264
  background-color: @navbarLinkBackgroundActive;
257
- -webkit-box-shadow: inset 0 3px 8px rgba(0,0,0,.125);
258
- -moz-box-shadow: inset 0 3px 8px rgba(0,0,0,.125);
259
- box-shadow: inset 0 3px 8px rgba(0,0,0,.125);
265
+ .box-shadow(inset 0 3px 8px rgba(0,0,0,.125));
260
266
  }
261
267
 
262
268
  // Navbar button for toggling navbar items in responsive layouts
@@ -268,7 +274,7 @@
268
274
  margin-left: 5px;
269
275
  margin-right: 5px;
270
276
  .buttonBackground(darken(@navbarBackgroundHighlight, 5%), darken(@navbarBackground, 5%));
271
- .box-shadow(~"inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.075)");
277
+ .box-shadow(inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.075));
272
278
  }
273
279
  .navbar .btn-navbar .icon-bar {
274
280
  display: block;
@@ -440,7 +446,7 @@
440
446
  color: @white;
441
447
  background-color: @navbarInverseSearchBackground;
442
448
  border-color: @navbarInverseSearchBorder;
443
- .box-shadow(~"inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.15)");
449
+ .box-shadow(inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.15));
444
450
  .transition(none);
445
451
  .placeholder(@navbarInverseSearchPlaceholderColor);
446
452