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-indarkenandlightenfunctions.text-color(any color) - The color of the button text. The CSS3text-shadowis calculated from this value using Sass'invertfunction.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.