Tactile Buttons
I made this a while ago, a clone of this design which was from a photoshop tutorial (sorry, I've lost the link to the tutorial itself). This uses no javascript and no images, pure CSS, and it's compatible with webkit and gecko.
<a href="javascript:void(0);" class="button">upload</a>
<a href="javascript:void(0);" class="button">upload</a>
<a href="javascript:void(0);" class="button">This button is unusually wide</a>
<a href="javascript:void(0);" class="button">submit</a>
<br />
<a href="javascript:void(0);" class="button">search</a>
<a href="javascript:void(0);" class="button">Buttons can contain<br />line breaks</a>
<a href="javascript:void(0);" class="button">release the penguins</a>
body {
body {
background: #111c29;
padding: 100px;
text-align: center;
}
.button {
text-decoration: none;
position: relative;
color: white;
font-family: Helvetica;
font-size: 12px;
text-transform: uppercase;
font-weight: bold;
font-smoothing: antialiased;
font-smoothing: antialiased;
text-shadow: 0 1px 2px rgba(0,0,0,0.2);
display: inline-block;
min-width: 90px;
text-align: center;
line-height: 16px;
padding: 8px 10px;
user-select: none;
border-radius: 2px;
border-top: 1px solid #486f7d;
border-bottom: 1px solid #2c4460;
background: gradient(radial, 50% -10, 0, center top, 40, from(rgba(112,172,228,0.15)), to(rgba(112,172,228,0))),
gradient(linear, center top, center bottom, from(#1c2b39), to(#131e2b));
background: radial-gradient(50% -10px, circle closest-side, rgba(112,172,228,0.15), rgba(112,172,228,0) 40px),
linear-gradient(top, #1c2b39, #131e2b);
box-shadow: 0 5px 0 #0b141e, 0 5px 0 1px #060a0d, 0 0 0 1px #08121e;
box-shadow: 0 5px 0 #0b141e, 0 5px 0 1px #060a0d, 0 0 0 1px #08121e;
top: -4px;
margin: 1px;
margin-bottom: 9px;
vertical-align: middle;
box-sizing: content-box;
box-sizing: content-box;
transition: box-shadow 0.075s ease-out,
top 0.075s ease-out;
transition: box-shadow 0.075s ease-out,
top 0.075s ease-out;
}
@-moz-document url-prefix() {
.button {
font-weight: normal;
}
}
.button:active {
top: 0; outline: none;
box-shadow: 0 1px 0 #0b141e, 0 1px 0 1px #060a0d, 0 0 0 1px #08121e;
box-shadow: 0 1px 0 #0b141e, 0 1px 0 1px #060a0d, 0 0 0 1px #08121e;
transition: box-shadow 0.075s ease-in,
top 0.075s ease-in;
transition: box-shadow 0.075s ease-in,
top 0.075s ease-in;
}