Estou tentando replicar um estilo de botão em uma maquete do Photoshop que possui duas sombras. A primeira sombra é uma sombra interna da caixa mais clara (2px) e a segunda é uma sombra projetada fora do próprio botão (5px).
No Photoshop, isso é fácil - Inner Shadow e Drop Shadow. Aparentemente, no CSS, posso ter um ou outro, mas não os dois ao mesmo tempo.
Se você tentar o código abaixo em um navegador, verá que a sombra da caixa substitui a sombra da caixa inserida.
Aqui está a sombra da caixa de inserção:
box-shadow: inset 0 2px 0px #dcffa6;
E é isso que eu gostaria para a sombra no botão:
box-shadow: 0 2px 5px #000;
Para o contexto, aqui está o meu código de botão completo (com gradientes e tudo):
button {
outline: none;
position: relative;
width: 160px;
height: 40px;
font-family: 'Open Sans', sans-serif;
color: #fff;
font-weight: 800;
font-size: 12px;
text-shadow: 0px 1px 3px black;
border-radius: 3px;
background-color: #669900;
background: -webkit-gradient(linear, left top, left bottom, from(#97cb52), to(#669900));
background: -moz-linear-gradient(top, #97cb52, #669900);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#97cb52', endColorstr='#669900');
box-shadow: inset 0 2px 0px #dcffa6;
box-shadow: 0 2px 5px #000;
border: 1px solid #222;
cursor: pointer;
}
As sombras da caixa podem usar vírgulas para ter vários efeitos, assim como nas imagens de plano de fundo (em CSS3).
fonte