This is a mixin I built for quick CSS3 buttons on the new VanPattenMedia.com. It's designed to be very flexible, and has a lot of options so you can customize it quickly and easily.
Defaults are in bold, if they exist.
@include vpm-button($background-color, $text-color, $state, $spread, $radius);
background-color
(any color) - The base background color of the button. The exact values of the colors used in the gradient (and the colors of the hover and active states) are automatically calculated using Sass' built-indarken
andlighten
functions.text-color
(any color) - The color of the button text. The CSS3text-shadow
is calculated from this value using Sass'invert
function.state
(default, active, hover) - The state of the button.spread
(14%, any percentage) - The percentage between the start and end values in the CSS3 gradients.radius
(8px, any px value) - The radius of the button border.
The vpm-button
mixin is fully compatible with recent versions of Webkit, Gecko, Presto, and IE9+. It will degrade gracefully in IE6-8 (no border-radius
support) and in older versions of the other rendering engines.