Bonitos botões em CSS3
Eu me deparei com um punhado de sites que explicam como criar flexíveis CSS3 botões, mas eu nunca realmente gastou o tempo para implementar um até que eu achei um pouco grande escrever cortesia dos caras mais no blog Zurb (em inglês) que têm um fantástico postar sobre a criação de CSS3 botões. Então eu tomei o seu exemplo e tweaked-lo para atender às minhas necessidades. É importante notar que se o seu usando o Internet Explorer que você não vai ver todos esses efeitos como o IE ainda não suporta CSS3. Browsers compatíveis CSS3 são, Safari, Chrome e Firefox 3 +.
O Objetivo
Queremos criar um conjunto de estilos que são browser compatível cruz e degradar normalmente para não CSS3 navegadores compatíveis. Um botão que é significado escalonável que podemos torná-lo uma variedade de tamanhos e cores com facilidade.
O style do Botão
Esta é a classe padrão que é aplicado a cada botão na nossa página. Podemos personalizar um botão é pela adição de uma cadeia de classes CSS, assim podemos definir a cor e tamanho. Você vai ver abaixo que temos uma imagem de fundo overlay.png. Isso nos dá o efeito de gradiente se o seu ainda consciente sobre IE6 você precisará usar um hack transparência PNG para fazer renderização de 24 bits PNG corretamente.
Outra característica com CSS3 é RGBA, esta é a mesma como RGB, mas com uma camada de alfa permitindo-lhe definir a opacidade de uma cor. Isso nos permite facilmente mudar o fundo dos nossos botões contendo div sem que tenhamos de ajustar o estilo de botões.
[sourcecode language=”css”]
.button, .button:visited {
background: #222 url(overlay.png) repeat-x;
display: inline-block;
padding: 5px 10px 6px;
color: #fff;
text-decoration: none;
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
-moz-box-shadow: 0 1px 3px rgba(0,0,0,0.6);
-webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.6);
text-shadow: 0 -1px 1px rgba(0,0,0,0.25);
border-bottom: 1px solid rgba(0,0,0,0.25);
position: relative;
cursor: pointer
}
[/sourcecode]
Na imagem abaixo você pode ver que a cor de fundo é diferente, mas a sombra em torno da borda do botão continua a mesma. Se tivéssemos usado um valor de cor HEX o botão esquerdo no branco seria sem dúvida algo como #dedede e o botão preto seria #333333. Assim você pode ver que o uso de RGBA permite flexibilidade nos muito mais ao renderizar sombras.
Tamanho do Botão
Agora temos a estrutura principal do nosso conjunto de botão na classe de botão. Agora podemos ir em frente e configurar alguns casos de tamanho. abaixo criamos as classes .pequeno .médio .grande e .super. Em todos os casos, exceto o botão médio. Acabamos de ajustado o tamanho da fonte eo espaçamento com a estrutura mesma tecla.
[sourcecode language=”css”]
.small.button, .small.button:visited { font-size: 11px}
.button, .button:visited,
.medium.button, .medium.button:visited
{
font-size: 13px;
font-weight: bold;
line-height: 1;
text-shadow: 0 -1px 1px rgba(0,0,0,0.25);
}
.large.button, .large.button:visited { font-size: 14px; padding: 8px 14px 9px; }
.super.button, .super.button:visited { font-size: 34px; padding: 8px 14px 9px; }
[/sourcecode]
Cor do Botão
O passo final é para especificar uma classe CSS para qualquer cor que queremos que o nosso botão(s) a ser. Neste caso, temos um conjunto de cores pré-definidas, mas você pode ajustar ou adicionar a estes como você gosta.
[sourcecode language=”css”]
.pink.button, .magenta.button:visited { background-color: #e22092; }
.pink.button:hover { background-color: #c81e82; }
.green.button, .green.button:visited { background-color: #91bd09; }
.green.button:hover { background-color: #749a02; }
.red.button, .red.button:visited { background-color: #e62727; }
.red.button:hover { background-color: #cf2525; }
.orange.button, .orange.button:visited { background-color: #ff5c00; }
.orange.button:hover { background-color: #d45500; }
.blue.button, .blue.button:visited { background-color: #2981e4; }
.blue.button:hover { background-color: #2575cf; }
.yellow.button, .yellow.button:visited { background-color: #ffb515; }
.yellow.button:hover { background-color: #fc9200; }
[/sourcecode]
Para ver uma demostração clique aqui , para baixar clique aqui.