// Describes feature mixins
// Sets the alternative box model so borders are counted as part of the width. @mixin alt-box-model {
box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
}
// Reset box margin and padding. @mixin reset-box-leave-border {
margin: 0; padding: 0;
}
// Reset box margin, padding and border. @mixin reset-box {
border: 0; @include reset-box-leave-border;
}
// Uses a simple text concealment method. @mixin text-conceal-simple {
overflow: hidden; text-indent: -5000px;
}
// Defines position as equi-distant from the edge of the parent element. @mixin four-edge-position($padding: 0px) {
top: $padding; right: $padding; bottom: $padding; left: $padding;
}
// Sets box to clear internal floats without using overflow. @mixin clearfix {
&:after { content: "."; display: block; clear: both; visibility: hidden; }
}
// Top and bottom children of this element have their margins truncated. @mixin children-truncate-margin {
> :first-child { margin-top: 0; } > :last-child { margin-bottom: 0; }
}
// Defines a vertical gradient. @mixin vertical-gradient($start-color, $end-color) {
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#{$start-color}', endColorstr='#{$end-color}'); background: -webkit-gradient(linear, left top, left bottom, from($start-color), to($end-color)); background: -moz-linear-gradient(top, $start-color, $end-color);
}
// Defines a common animation. @mixin generic-animation($animation) {
-webkit-animation: $animation; -moz-animation: $animation; -o-animation: $animation; animation: $animation;
}
// Defines font smoothing method. // maximilianhoffmann.com/posts/better-font-rendering-on-osx @mixin font-smoothing($value: on) {
@if $value == on { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } @else { -webkit-font-smoothing: subpixel-antialiased; -moz-osx-font-smoothing: auto; }
}