Paolo De Feo
a- a+

CSS3 Border Radius: creare bottoni con angoli arrotondati scalabili con effetto hover e colorati con gradienti

Vediamo come creare questi particolari bottoni CSS3 utilizzando solo i fogli di stile. Esempio

Avevamo già parlato della proprietà CSS3 “border-radius”, caratteristica grafica che permette di associare angoli arrotondati agli elementi desiderati.

Oggi proveremo a fare un esempio più dettagliato di questa proprietà, una delle specifiche più apprezzate dei CSS3. Ricordiamo che è compatibile con le ultime versioni di tutti i browser, Internet Explorer incluso a partire dalla versione 9. Per le versioni precedenti dei software è possibile utilizzare qualche piccolo trucco.

L’esempio di oggi è imperniato sulla creazione di bottoni CSS3 scalabili  con effetto “hover” e colorati con gradienti. Il tutto è realizzato usando solo fogli di stile, senza immagini né JavaScript. Questo esempio prende come base dei bottoni, ma può essere applicato a DIV, paragrafi e quant’altro.

Stile del bottone

.button {   //bottone
	display: inline-block;
	outline: none;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	font: 14px/100% Arial, Helvetica, sans-serif;
	padding: .5em 2em .55em;
	text-shadow: 0 1px 1px rgba(0,0,0,.3);
	-webkit-border-radius: .5em; 
	-moz-border-radius: .5em;
	border-radius: .5em;
	-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2);
	-moz-box-shadow: 0 1px 2px rgba(0,0,0,.2);
	box-shadow: 0 1px 2px rgba(0,0,0,.2);
}
.button:hover { //cursore sopra al bottone
	text-decoration: none;
}
.button:active { // bottone cliccato
	position: relative;
	top: 1px;
}

Come si nota alla voce border-radius, gli angoli sono stati arrotondati al minimo (0.5em).

Stile del gradiente

Diamo uno stile al nostro gradiente, aggiungendo qualche “filtro di salvataggio” in caso di problemi di rendering con i browser più datati.

.orange {
	color: #fef4e9;
	border: solid 1px #da7c0c;
	background: #f78d1d;
	background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
	background: -moz-linear-gradient(top,  #faa51a,  #f47a20);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
}
.orange:hover {
	background: #f47c20;
	background: -webkit-gradient(linear, left top, left bottom, from(#f88e11), to(#f06015));
	background: -moz-linear-gradient(top,  #f88e11,  #f06015);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f88e11', endColorstr='#f06015');
}
.orange:active {
	color: #fcd3a5;
	background: -webkit-gradient(linear, left top, left bottom, from(#f47a20), to(#faa51a));
	background: -moz-linear-gradient(top,  #f47a20,  #faa51a);
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f47a20', endColorstr='#faa51a');
}

Fatto! Per richiamarlo nella pagina e associarlo ad un menu vi basterà eseguire il seguente markup:

<a href="tuo-link-menu" class="button orange">menu arancio</a>

Notabene: in caso di problemi di rendering il bottone verrà mostrato rettangolare (stile regolare).



Ti potrebbe interessare anche

commenta la notizia

C'è 1 commento
Graziano
Hai qualche domanda da fare?