Skip to content

Instantly share code, notes, and snippets.

@kovtunos
Last active July 23, 2016 04:20
Show Gist options
  • Save kovtunos/181a125f9ee3692fe3810225271bdb41 to your computer and use it in GitHub Desktop.
Save kovtunos/181a125f9ee3692fe3810225271bdb41 to your computer and use it in GitHub Desktop.
Button generator #mixin
// Button generator.
//
// Usage:
// @include button-variant(TEXT COLOR, BACKGROUND COLOR, BORDER COLOR);
// @include button-variant(TEXT COLOR, BACKGROUND COLOR);
%btn {
margin: 0 .5em;
transition: background-color ease .2s;
}
@mixin button-variant($color, $background, $border: null) {
@extend %btn;
background-color: $background;
color: $color;
@if ($border) {
border-color: $border;
}
&:focus {
background-color: darken($background, 10%);
color: $color;
@if ($border) {
border-color: darken($border, 25%);
}
}
&:hover {
background-color: darken($background, 10%);
color: $color;
@if ($border) {
border-color: darken($border, 12%);
}
}
&:active {
background-color: darken($background, 10%);
color: $color;
@if ($border) {
border-color: darken($border, 12%);
}
&:hover,
&:focus {
background-color: darken($background, 17%);
color: $color;
@if ($border) {
border-color: darken($border, 25%);
}
}
}
&[disabled] {
&:hover,
&:focus {
background-color: $background;
@if ($border) {
border-color: $border;
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment