@include button-size($btn-padding-y, $btn-padding-x, $font-size-base, $btn-border-radius);
@include transition($btn-transition);
- &,
- &:active,
- &.active {
- &:focus,
- &.focus {
- @include tab-focus();
- }
+ &:focus,
+ &.focus {
+ @include tab-focus();
}
+ // Share hover and focus styles
@include hover-focus {
text-decoration: none;
}
text-decoration: none;
}
- &:active,
- &.active {
- background-image: none;
- outline: 0;
- @include box-shadow($btn-active-box-shadow);
- }
-
+ // Disabled comes first so active can properly restyle
&.disabled,
&:disabled {
cursor: $cursor-disabled;
opacity: .65;
@include box-shadow(none);
}
+
+ &:active,
+ &.active {
+ background-image: none;
+ outline: 0;
+ @include box-shadow($btn-active-box-shadow);
+ }
}
// Future-proof disabling of clicks on `<a>` elements
border-color: $border;
@include box-shadow($btn-box-shadow);
+ // Hover and focus styles are shared
@include hover {
color: $color;
background-color: $active-background;
- border-color: $active-border;
+ border-color: $active-border;
}
-
&:focus,
&.focus {
color: $color;
background-color: $active-background;
- border-color: $active-border;
+ border-color: $active-border;
+ }
+
+ // Disabled comes first so active can properly restyle
+ &.disabled,
+ &:disabled {
+ background-color: $background;
+ border-color: $border;
}
&:active,
&.active,
- .open > &.dropdown-toggle {
+ .show > &.dropdown-toggle {
color: $color;
background-color: $active-background;
- border-color: $active-border;
- // Remove the gradient for the pressed/active state
- background-image: none;
+ border-color: $active-border;
+ background-image: none; // Remove the gradient for the pressed/active state
@include box-shadow($btn-active-box-shadow);
-
- &:hover,
- &:focus,
- &.focus {
- color: $color;
- background-color: darken($background, 17%);
- border-color: darken($border, 25%);
- }
- }
-
- &.disabled,
- &:disabled {
- &:focus,
- &.focus {
- background-color: $background;
- border-color: $border;
- }
- @include hover {
- background-color: $background;
- border-color: $border;
- }
}
}
@include hover {
color: $color-hover;
background-color: $color;
- border-color: $color;
+ border-color: $color;
}
&:focus,
&.focus {
color: $color-hover;
background-color: $color;
- border-color: $color;
+ border-color: $color;
+ }
+
+ &.disabled,
+ &:disabled {
+ color: $color;
+ background-color: transparent;
}
&:active,
&.active,
- .open > &.dropdown-toggle {
+ .show > &.dropdown-toggle {
color: $color-hover;
background-color: $color;
- border-color: $color;
-
- &:hover,
- &:focus,
- &.focus {
- color: $color-hover;
- background-color: darken($color, 17%);
- border-color: darken($color, 25%);
- }
- }
-
- &.disabled,
- &:disabled {
- &:focus,
- &.focus {
- border-color: lighten($color, 20%);
- }
- @include hover {
- border-color: lighten($color, 20%);
- }
+ border-color: $color;
}
}