less-rails-bootstrap 2.3.3 → 3.0.0.rc1

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.
Files changed (72) hide show
  1. data/.gitignore +1 -0
  2. data/CHANGELOG.md +4 -0
  3. data/README.md +7 -11
  4. data/lib/less/rails/bootstrap/version.rb +1 -1
  5. data/scripts/update_bootstrap.sh +37 -8
  6. data/test/cases/usage_css_spec.rb +15 -12
  7. data/test/cases/usage_js_spec.rb +4 -4
  8. data/test/dummy_app/app/assets/stylesheets/fonts.css.less +2 -0
  9. data/test/dummy_app/app/assets/stylesheets/framework.css.less +4 -2
  10. data/test/dummy_app/app/assets/stylesheets/individual.css.less +2 -2
  11. data/test/spec_helper.rb +1 -2
  12. data/vendor/assets/javascripts/twitter/bootstrap.js +0 -1
  13. data/vendor/assets/javascripts/twitter/bootstrap/affix.js +58 -49
  14. data/vendor/assets/javascripts/twitter/bootstrap/alert.js +36 -37
  15. data/vendor/assets/javascripts/twitter/bootstrap/button.js +41 -39
  16. data/vendor/assets/javascripts/twitter/bootstrap/carousel.js +131 -125
  17. data/vendor/assets/javascripts/twitter/bootstrap/collapse.js +108 -96
  18. data/vendor/assets/javascripts/twitter/bootstrap/dropdown.js +72 -87
  19. data/vendor/assets/javascripts/twitter/bootstrap/modal.js +149 -155
  20. data/vendor/assets/javascripts/twitter/bootstrap/popover.js +60 -59
  21. data/vendor/assets/javascripts/twitter/bootstrap/scrollspy.js +103 -107
  22. data/vendor/assets/javascripts/twitter/bootstrap/tab.js +73 -82
  23. data/vendor/assets/javascripts/twitter/bootstrap/tooltip.js +258 -255
  24. data/vendor/assets/javascripts/twitter/bootstrap/transition.js +34 -38
  25. data/vendor/frameworks/twitter/bootstrap/accordion.less +9 -12
  26. data/vendor/frameworks/twitter/bootstrap/alerts.less +43 -53
  27. data/vendor/frameworks/twitter/bootstrap/bootstrap.less +21 -21
  28. data/vendor/frameworks/twitter/bootstrap/breadcrumbs.less +7 -8
  29. data/vendor/frameworks/twitter/bootstrap/button-groups.less +93 -151
  30. data/vendor/frameworks/twitter/bootstrap/buttons.less +93 -164
  31. data/vendor/frameworks/twitter/bootstrap/carousel.less +110 -63
  32. data/vendor/frameworks/twitter/bootstrap/close.less +18 -17
  33. data/vendor/frameworks/twitter/bootstrap/code.less +14 -20
  34. data/vendor/frameworks/twitter/bootstrap/component-animations.less +10 -3
  35. data/vendor/frameworks/twitter/bootstrap/dropdowns.less +66 -143
  36. data/vendor/frameworks/twitter/bootstrap/forms.less +281 -548
  37. data/vendor/frameworks/twitter/bootstrap/grid.less +194 -11
  38. data/vendor/frameworks/twitter/bootstrap/media.less +8 -7
  39. data/vendor/frameworks/twitter/bootstrap/mixins.less +290 -446
  40. data/vendor/frameworks/twitter/bootstrap/modals.less +92 -51
  41. data/vendor/frameworks/twitter/bootstrap/navbar.less +285 -402
  42. data/vendor/frameworks/twitter/bootstrap/navs.less +176 -348
  43. data/vendor/frameworks/twitter/bootstrap/pager.less +45 -33
  44. data/vendor/frameworks/twitter/bootstrap/pagination.less +89 -104
  45. data/vendor/frameworks/twitter/bootstrap/popovers.less +53 -51
  46. data/vendor/frameworks/twitter/bootstrap/progress-bars.less +28 -45
  47. data/vendor/frameworks/twitter/bootstrap/responsive-utilities.less +92 -32
  48. data/vendor/frameworks/twitter/bootstrap/scaffolding.less +60 -18
  49. data/vendor/frameworks/twitter/bootstrap/tables.less +131 -164
  50. data/vendor/frameworks/twitter/bootstrap/thumbnails.less +20 -31
  51. data/vendor/frameworks/twitter/bootstrap/tooltip.less +45 -20
  52. data/vendor/frameworks/twitter/bootstrap/type.less +84 -99
  53. data/vendor/frameworks/twitter/bootstrap/utilities.less +17 -5
  54. data/vendor/frameworks/twitter/bootstrap/variables.less +446 -179
  55. data/vendor/frameworks/twitter/bootstrap/wells.less +5 -5
  56. metadata +41 -44
  57. data/vendor/assets/images/twitter/bootstrap/glyphicons-halflings-white.png +0 -0
  58. data/vendor/assets/images/twitter/bootstrap/glyphicons-halflings.png +0 -0
  59. data/vendor/assets/javascripts/twitter/bootstrap/typeahead.js +0 -335
  60. data/vendor/assets/stylesheets/twitter/bootstrap-responsive.css.less +0 -1
  61. data/vendor/assets/stylesheets/twitter/bootstrap.css.less +0 -1
  62. data/vendor/frameworks/twitter/bootstrap.less +0 -1
  63. data/vendor/frameworks/twitter/bootstrap/hero-unit.less +0 -25
  64. data/vendor/frameworks/twitter/bootstrap/labels-badges.less +0 -84
  65. data/vendor/frameworks/twitter/bootstrap/layouts.less +0 -16
  66. data/vendor/frameworks/twitter/bootstrap/reset.less +0 -216
  67. data/vendor/frameworks/twitter/bootstrap/responsive-1200px-min.less +0 -28
  68. data/vendor/frameworks/twitter/bootstrap/responsive-767px-max.less +0 -193
  69. data/vendor/frameworks/twitter/bootstrap/responsive-768px-979px.less +0 -19
  70. data/vendor/frameworks/twitter/bootstrap/responsive-navbar.less +0 -189
  71. data/vendor/frameworks/twitter/bootstrap/responsive.less +0 -48
  72. data/vendor/frameworks/twitter/bootstrap/sprites.less +0 -197
@@ -1,8 +1,8 @@
1
- /* ===================================================
2
- * bootstrap-transition.js v2.3.2
3
- * http://twitter.github.com/bootstrap/javascript.html#transitions
4
- * ===================================================
5
- * Copyright 2012 Twitter, Inc.
1
+ /* ========================================================================
2
+ * Bootstrap: transition.js v3.0.0
3
+ * http://twbs.github.com/bootstrap/javascript.html#transitions
4
+ * ========================================================================
5
+ * Copyright 2013 Twitter, Inc.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the "License");
8
8
  * you may not use this file except in compliance with the License.
@@ -15,46 +15,42 @@
15
15
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
16
  * See the License for the specific language governing permissions and
17
17
  * limitations under the License.
18
- * ========================================================== */
18
+ * ======================================================================== */
19
19
 
20
20
 
21
- !function ($) {
21
+ +function ($) { "use strict";
22
22
 
23
- "use strict"; // jshint ;_;
23
+ // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/)
24
+ // ============================================================
24
25
 
26
+ function transitionEnd() {
27
+ var el = document.createElement('bootstrap')
25
28
 
26
- /* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
27
- * ======================================================= */
29
+ var transEndEventNames = {
30
+ 'WebkitTransition' : 'webkitTransitionEnd'
31
+ , 'MozTransition' : 'transitionend'
32
+ , 'OTransition' : 'oTransitionEnd otransitionend'
33
+ , 'transition' : 'transitionend'
34
+ }
28
35
 
29
- $(function () {
30
-
31
- $.support.transition = (function () {
32
-
33
- var transitionEnd = (function () {
34
-
35
- var el = document.createElement('bootstrap')
36
- , transEndEventNames = {
37
- 'WebkitTransition' : 'webkitTransitionEnd'
38
- , 'MozTransition' : 'transitionend'
39
- , 'OTransition' : 'oTransitionEnd otransitionend'
40
- , 'transition' : 'transitionend'
41
- }
42
- , name
43
-
44
- for (name in transEndEventNames){
45
- if (el.style[name] !== undefined) {
46
- return transEndEventNames[name]
47
- }
48
- }
49
-
50
- }())
51
-
52
- return transitionEnd && {
53
- end: transitionEnd
36
+ for (var name in transEndEventNames) {
37
+ if (el.style[name] !== undefined) {
38
+ return { end: transEndEventNames[name] }
54
39
  }
40
+ }
41
+ }
42
+
43
+ // http://blog.alexmaccaw.com/css-transitions
44
+ $.fn.emulateTransitionEnd = function (duration) {
45
+ var called = false, $el = this
46
+ $(this).one('webkitTransitionEnd', function () { called = true })
47
+ var callback = function () { if (!called) $($el).trigger('webkitTransitionEnd') }
48
+ setTimeout(callback, duration)
49
+ return this
50
+ }
55
51
 
56
- })()
57
-
52
+ $(function () {
53
+ $.support.transition = transitionEnd()
58
54
  })
59
55
 
60
- }(window.jQuery);
56
+ }(window.jQuery);
@@ -5,30 +5,27 @@
5
5
 
6
6
  // Parent container
7
7
  .accordion {
8
- margin-bottom: @baseLineHeight;
8
+ margin-bottom: @line-height-computed;
9
9
  }
10
10
 
11
11
  // Group == heading + body
12
12
  .accordion-group {
13
13
  margin-bottom: 2px;
14
- border: 1px solid #e5e5e5;
15
- .border-radius(@baseBorderRadius);
14
+ border: 1px solid @accordion-border-color;
15
+ border-radius: @border-radius-base;
16
16
  }
17
17
  .accordion-heading {
18
18
  border-bottom: 0;
19
- }
20
- .accordion-heading .accordion-toggle {
21
- display: block;
22
- padding: 8px 15px;
23
- }
24
19
 
25
- // General toggle styles
26
- .accordion-toggle {
27
- cursor: pointer;
20
+ .accordion-toggle {
21
+ display: block;
22
+ padding: 8px 15px;
23
+ cursor: pointer;
24
+ }
28
25
  }
29
26
 
30
27
  // Inner needs the styles because you can't animate properly with any styles on the element
31
28
  .accordion-inner {
32
29
  padding: 9px 15px;
33
- border-top: 1px solid #e5e5e5;
30
+ border-top: 1px solid @accordion-border-color;
34
31
  }
@@ -7,73 +7,63 @@
7
7
  // -------------------------
8
8
 
9
9
  .alert {
10
- padding: 8px 35px 8px 14px;
11
- margin-bottom: @baseLineHeight;
12
- text-shadow: 0 1px 0 rgba(255,255,255,.5);
13
- background-color: @warningBackground;
14
- border: 1px solid @warningBorder;
15
- .border-radius(@baseBorderRadius);
16
- }
17
- .alert,
18
- .alert h4 {
19
- // Specified for the h4 to prevent conflicts of changing @headingsColor
20
- color: @warningText;
21
- }
22
- .alert h4 {
23
- margin: 0;
24
- }
10
+ padding: 10px 35px 10px 15px;
11
+ margin-bottom: @line-height-computed;
12
+ color: @alert-text;
13
+ background-color: @alert-bg;
14
+ border: 1px solid @alert-border;
15
+ border-radius: @alert-border-radius;
25
16
 
26
- // Adjust close link position
27
- .alert .close {
28
- position: relative;
29
- top: -2px;
30
- right: -21px;
31
- line-height: @baseLineHeight;
32
- }
17
+ // Headings for larger alerts
18
+ h4 {
19
+ margin-top: 0;
20
+ // Specified for the h4 to prevent conflicts of changing @headingsColor
21
+ color: inherit;
22
+ }
23
+ // Match the hr to the border of the alert
24
+ hr {
25
+ border-top-color: darken(@alert-border, 5%);
26
+ }
27
+ // Provide class for links that match alerts
28
+ .alert-link {
29
+ font-weight: 500;
30
+ color: darken(@alert-text, 10%);
31
+ }
33
32
 
33
+ // Adjust close link position
34
+ .close {
35
+ position: relative;
36
+ top: -2px;
37
+ right: -21px;
38
+ color: inherit;
39
+ }
40
+ }
34
41
 
35
42
  // Alternate styles
36
43
  // -------------------------
37
44
 
38
45
  .alert-success {
39
- background-color: @successBackground;
40
- border-color: @successBorder;
41
- color: @successText;
42
- }
43
- .alert-success h4 {
44
- color: @successText;
46
+ .alert-variant(@alert-success-bg, @alert-success-border, @alert-success-text);
45
47
  }
46
- .alert-danger,
47
- .alert-error {
48
- background-color: @errorBackground;
49
- border-color: @errorBorder;
50
- color: @errorText;
51
- }
52
- .alert-danger h4,
53
- .alert-error h4 {
54
- color: @errorText;
48
+ .alert-danger {
49
+ .alert-variant(@alert-danger-bg, @alert-danger-border, @alert-danger-text);
55
50
  }
56
51
  .alert-info {
57
- background-color: @infoBackground;
58
- border-color: @infoBorder;
59
- color: @infoText;
60
- }
61
- .alert-info h4 {
62
- color: @infoText;
52
+ .alert-variant(@alert-info-bg, @alert-info-border, @alert-info-text);
63
53
  }
64
54
 
65
-
66
55
  // Block alerts
67
56
  // -------------------------
68
57
 
69
58
  .alert-block {
70
- padding-top: 14px;
71
- padding-bottom: 14px;
72
- }
73
- .alert-block > p,
74
- .alert-block > ul {
75
- margin-bottom: 0;
76
- }
77
- .alert-block p + p {
78
- margin-top: 5px;
59
+ padding-top: 15px;
60
+ padding-bottom: 15px;
61
+
62
+ > p,
63
+ > ul {
64
+ margin-bottom: 0;
65
+ }
66
+ p + p {
67
+ margin-top: 5px;
68
+ }
79
69
  }
@@ -1,46 +1,43 @@
1
1
  /*!
2
- * Bootstrap v2.3.2
2
+ * Bootstrap v3.0.0
3
3
  *
4
- * Copyright 2012 Twitter, Inc
4
+ * Copyright 2013 Twitter, Inc
5
5
  * Licensed under the Apache License v2.0
6
6
  * http://www.apache.org/licenses/LICENSE-2.0
7
7
  *
8
- * Designed and built with all the love in the world @twitter by @mdo and @fat.
8
+ * Designed and built with all the love in the world by @mdo and @fat.
9
9
  */
10
10
 
11
11
  // Core variables and mixins
12
- @import "variables.less"; // Modify this for custom colors, font-sizes, etc
12
+ @import "variables.less";
13
13
  @import "mixins.less";
14
14
 
15
- // CSS Reset
16
- @import "reset.less";
15
+ // Reset
16
+ @import "normalize.less";
17
+ @import "print.less";
17
18
 
18
- // Grid system and page structure
19
+ // Core CSS
19
20
  @import "scaffolding.less";
20
- @import "grid.less";
21
- @import "layouts.less";
22
-
23
- // Base CSS
24
21
  @import "type.less";
25
22
  @import "code.less";
26
- @import "forms.less";
23
+ @import "grid.less";
24
+
27
25
  @import "tables.less";
26
+ @import "forms.less";
27
+ @import "buttons.less";
28
28
 
29
29
  // Components: common
30
- @import "sprites.less";
30
+ @import "component-animations.less";
31
31
  @import "dropdowns.less";
32
+ @import "list-group.less";
33
+ @import "panels.less";
32
34
  @import "wells.less";
33
- @import "component-animations.less";
34
35
  @import "close.less";
35
36
 
36
- // Components: Buttons & Alerts
37
- @import "buttons.less";
38
- @import "button-groups.less";
39
- @import "alerts.less"; // Note: alerts share common CSS with buttons and thus have styles in buttons.less
40
-
41
37
  // Components: Nav
42
38
  @import "navs.less";
43
39
  @import "navbar.less";
40
+ @import "button-groups.less";
44
41
  @import "breadcrumbs.less";
45
42
  @import "pagination.less";
46
43
  @import "pager.less";
@@ -51,13 +48,16 @@
51
48
  @import "popovers.less";
52
49
 
53
50
  // Components: Misc
51
+ @import "alerts.less";
54
52
  @import "thumbnails.less";
55
53
  @import "media.less";
56
- @import "labels-badges.less";
54
+ @import "labels.less";
55
+ @import "badges.less";
57
56
  @import "progress-bars.less";
58
57
  @import "accordion.less";
59
58
  @import "carousel.less";
60
- @import "hero-unit.less";
59
+ @import "jumbotron.less";
61
60
 
62
61
  // Utility classes
63
62
  @import "utilities.less"; // Has to be last to override when necessary
63
+ @import "responsive-utilities.less";
@@ -5,20 +5,19 @@
5
5
 
6
6
  .breadcrumb {
7
7
  padding: 8px 15px;
8
- margin: 0 0 @baseLineHeight;
8
+ margin-bottom: @line-height-computed;
9
9
  list-style: none;
10
- background-color: #f5f5f5;
11
- .border-radius(@baseBorderRadius);
10
+ background-color: @breadcrumb-bg;
11
+ border-radius: @border-radius-base;
12
12
  > li {
13
13
  display: inline-block;
14
- .ie7-inline-block();
15
- text-shadow: 0 1px 0 @white;
16
- > .divider {
14
+ &+li:before {
15
+ content: "/\00a0"; // Unicode space added since inline-block means non-collapsing white-space
17
16
  padding: 0 5px;
18
- color: #ccc;
17
+ color: @breadcrumb-color;
19
18
  }
20
19
  }
21
20
  > .active {
22
- color: @grayLight;
21
+ color: @breadcrumb-active-color;
23
22
  }
24
23
  }
@@ -2,90 +2,85 @@
2
2
  // Button groups
3
3
  // --------------------------------------------------
4
4
 
5
+ // Button carets
6
+ .btn .caret {
7
+ border-top-color: @btn-default-color;
8
+ }
9
+ .dropup .btn .caret {
10
+ border-bottom-color: @btn-default-color;
11
+ }
5
12
 
6
13
  // Make the div behave like a button
7
- .btn-group {
14
+ .btn-group,
15
+ .btn-group-vertical {
8
16
  position: relative;
9
17
  display: inline-block;
10
- .ie7-inline-block();
11
- font-size: 0; // remove as part 1 of font-size inline-block hack
12
18
  vertical-align: middle; // match .btn alignment given font-size hack above
13
- white-space: nowrap; // prevent buttons from wrapping when in tight spaces (e.g., the table on the tests page)
14
- .ie7-restore-left-whitespace();
19
+ > .btn {
20
+ position: relative;
21
+ float: left;
22
+ // Bring the "active" button to the front
23
+ &:hover,
24
+ &:active {
25
+ z-index: 2;
26
+ }
27
+ }
15
28
  }
16
29
 
17
- // Space out series of button groups
18
- .btn-group + .btn-group {
19
- margin-left: 5px;
30
+ // Prevent double borders when buttons are next to each other
31
+ .btn-group .btn + .btn {
32
+ margin-left: -1px;
20
33
  }
21
34
 
22
35
  // Optional: Group multiple button groups together for a toolbar
23
36
  .btn-toolbar {
24
- font-size: 0; // Hack to remove whitespace that results from using inline-block
25
- margin-top: @baseLineHeight / 2;
26
- margin-bottom: @baseLineHeight / 2;
27
- > .btn + .btn,
28
- > .btn-group + .btn,
29
- > .btn + .btn-group {
30
- margin-left: 5px;
31
- }
32
- }
37
+ .clearfix();
33
38
 
34
- // Float them, remove border radius, then re-add to first and last elements
35
- .btn-group > .btn {
36
- position: relative;
37
- .border-radius(0);
38
- }
39
- .btn-group > .btn + .btn {
40
- margin-left: -1px;
41
- }
42
- .btn-group > .btn,
43
- .btn-group > .dropdown-menu,
44
- .btn-group > .popover {
45
- font-size: @baseFontSize; // redeclare as part 2 of font-size inline-block hack
39
+ .btn-group {
40
+ float: left;
41
+ }
42
+ // Space out series of button groups
43
+ > .btn,
44
+ > .btn-group {
45
+ + .btn,
46
+ + .btn-group {
47
+ margin-left: 5px;
48
+ }
49
+ }
46
50
  }
47
51
 
48
- // Reset fonts for other sizes
49
- .btn-group > .btn-mini {
50
- font-size: @fontSizeMini;
51
- }
52
- .btn-group > .btn-small {
53
- font-size: @fontSizeSmall;
54
- }
55
- .btn-group > .btn-large {
56
- font-size: @fontSizeLarge;
52
+ .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
53
+ border-radius: 0;
57
54
  }
58
55
 
59
56
  // 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
60
57
  .btn-group > .btn:first-child {
61
58
  margin-left: 0;
62
- .border-top-left-radius(@baseBorderRadius);
63
- .border-bottom-left-radius(@baseBorderRadius);
59
+ &:not(:last-child):not(.dropdown-toggle) {
60
+ .border-right-radius(0);
61
+ }
64
62
  }
65
63
  // Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it
66
- .btn-group > .btn:last-child,
67
- .btn-group > .dropdown-toggle {
68
- .border-top-right-radius(@baseBorderRadius);
69
- .border-bottom-right-radius(@baseBorderRadius);
64
+ .btn-group > .btn:last-child:not(:first-child),
65
+ .btn-group > .dropdown-toggle:not(:first-child) {
66
+ .border-left-radius(0);
70
67
  }
71
- // Reset corners for large buttons
72
- .btn-group > .btn.large:first-child {
73
- margin-left: 0;
74
- .border-top-left-radius(@borderRadiusLarge);
75
- .border-bottom-left-radius(@borderRadiusLarge);
68
+
69
+ // Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group)
70
+ .btn-group > .btn-group {
71
+ float: left;
76
72
  }
77
- .btn-group > .btn.large:last-child,
78
- .btn-group > .large.dropdown-toggle {
79
- .border-top-right-radius(@borderRadiusLarge);
80
- .border-bottom-right-radius(@borderRadiusLarge);
73
+ .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
74
+ border-radius: 0;
81
75
  }
82
-
83
- // On hover/focus/active, bring the proper btn to front
84
- .btn-group > .btn:hover,
85
- .btn-group > .btn:focus,
86
- .btn-group > .btn:active,
87
- .btn-group > .btn.active {
88
- z-index: 2;
76
+ .btn-group > .btn-group:first-child {
77
+ > .btn:last-child,
78
+ > .dropdown-toggle {
79
+ .border-right-radius(0);
80
+ }
81
+ }
82
+ .btn-group > .btn-group:last-child > .btn:first-child {
83
+ .border-left-radius(0);
89
84
  }
90
85
 
91
86
  // On active and open, don't show outline
@@ -103,78 +98,26 @@
103
98
  .btn-group > .btn + .dropdown-toggle {
104
99
  padding-left: 8px;
105
100
  padding-right: 8px;
106
- .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)");
107
- *padding-top: 5px;
108
- *padding-bottom: 5px;
109
- }
110
- .btn-group > .btn-mini + .dropdown-toggle {
111
- padding-left: 5px;
112
- padding-right: 5px;
113
- *padding-top: 2px;
114
- *padding-bottom: 2px;
115
- }
116
- .btn-group > .btn-small + .dropdown-toggle {
117
- *padding-top: 5px;
118
- *padding-bottom: 4px;
119
101
  }
120
102
  .btn-group > .btn-large + .dropdown-toggle {
121
103
  padding-left: 12px;
122
104
  padding-right: 12px;
123
- *padding-top: 7px;
124
- *padding-bottom: 7px;
125
105
  }
126
106
 
127
- .btn-group.open {
128
-
129
- // The clickable button for toggling the menu
130
- // Remove the gradient and set the same inset shadow as the :active state
131
- .dropdown-toggle {
132
- background-image: none;
133
- .box-shadow(~"inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)");
134
- }
135
-
136
- // Keep the hover's background when dropdown is open
137
- .btn.dropdown-toggle {
138
- background-color: @btnBackgroundHighlight;
139
- }
140
- .btn-primary.dropdown-toggle {
141
- background-color: @btnPrimaryBackgroundHighlight;
142
- }
143
- .btn-warning.dropdown-toggle {
144
- background-color: @btnWarningBackgroundHighlight;
145
- }
146
- .btn-danger.dropdown-toggle {
147
- background-color: @btnDangerBackgroundHighlight;
148
- }
149
- .btn-success.dropdown-toggle {
150
- background-color: @btnSuccessBackgroundHighlight;
151
- }
152
- .btn-info.dropdown-toggle {
153
- background-color: @btnInfoBackgroundHighlight;
154
- }
155
- .btn-inverse.dropdown-toggle {
156
- background-color: @btnInverseBackgroundHighlight;
157
- }
107
+ // The clickable button for toggling the menu
108
+ // Remove the gradient and set the same inset shadow as the :active state
109
+ .btn-group.open .dropdown-toggle {
110
+ .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
158
111
  }
159
112
 
160
113
 
161
114
  // Reposition the caret
162
115
  .btn .caret {
163
- margin-top: 8px;
164
116
  margin-left: 0;
165
117
  }
166
118
  // Carets in other button sizes
167
119
  .btn-large .caret {
168
- margin-top: 6px;
169
- }
170
- .btn-large .caret {
171
- border-left-width: 5px;
172
- border-right-width: 5px;
173
- border-top-width: 5px;
174
- }
175
- .btn-mini .caret,
176
- .btn-small .caret {
177
- margin-top: 8px;
120
+ border-width: 5px;
178
121
  }
179
122
  // Upside down carets for .dropup
180
123
  .dropup .btn-large .caret {
@@ -182,48 +125,47 @@
182
125
  }
183
126
 
184
127
 
185
-
186
- // Account for other colors
187
- .btn-primary,
188
- .btn-warning,
189
- .btn-danger,
190
- .btn-info,
191
- .btn-success,
192
- .btn-inverse {
193
- .caret {
194
- border-top-color: @white;
195
- border-bottom-color: @white;
196
- }
197
- }
198
-
199
-
200
-
201
128
  // Vertical button groups
202
129
  // ----------------------
203
130
 
204
- .btn-group-vertical {
205
- display: inline-block; // makes buttons only take up the width they need
206
- .ie7-inline-block();
207
- }
208
131
  .btn-group-vertical > .btn {
209
132
  display: block;
210
133
  float: none;
134
+ width: 100%;
211
135
  max-width: 100%;
212
- .border-radius(0);
213
- }
214
- .btn-group-vertical > .btn + .btn {
215
- margin-left: 0;
216
- margin-top: -1px;
217
- }
218
- .btn-group-vertical > .btn:first-child {
219
- .border-radius(@baseBorderRadius @baseBorderRadius 0 0);
136
+ + .btn {
137
+ margin-top: -1px;
138
+ }
220
139
  }
221
- .btn-group-vertical > .btn:last-child {
222
- .border-radius(0 0 @baseBorderRadius @baseBorderRadius);
140
+ .btn-group-vertical .btn {
141
+ &:not(:first-child):not(:last-child) {
142
+ border-radius: 0;
143
+ }
144
+ &:first-child {
145
+ .border-bottom-radius(0);
146
+ }
147
+ &:last-child {
148
+ .border-top-radius(0);
149
+ }
223
150
  }
224
- .btn-group-vertical > .btn-large:first-child {
225
- .border-radius(@borderRadiusLarge @borderRadiusLarge 0 0);
151
+
152
+
153
+ // Justified button groups
154
+ // ----------------------
155
+
156
+ .btn-group-justified {
157
+ display: table;
158
+ width: 100%;
159
+ .btn {
160
+ float: none;
161
+ display: table-cell;
162
+ width: 1%;
163
+ }
226
164
  }
227
- .btn-group-vertical > .btn-large:last-child {
228
- .border-radius(0 0 @borderRadiusLarge @borderRadiusLarge);
165
+
166
+
167
+ // Checkbox and radio options
168
+ .btn-group[data-toggle="buttons"] > .btn > input[type="radio"],
169
+ .btn-group[data-toggle="buttons"] > .btn > input[type="checkbox"] {
170
+ display: none;
229
171
  }