La proprietà css background
, ti consente di controllare lo sfondo di qualsiasi elemento e viene visualizzato sotto al contenuto di quell’elemento.
Questa è una proprietà shorthand, quindi permette di scrivere in una sola riga quelle che sarebbero più proprietà da scrivere in righe diverse. Ecco un esempio:
.elemento {
background:
url(sfondo.jpg) /* immagine */
top center / 300px 300px /* posizione / dimensione */
no-repeat /* ripetere */
fixed /* attaccamento */
padding-box /* origine */
content-box /* ritaglio */
yellow; /* colore */
}
Infatti la proprietà background
è costruita da altre proprietà:
background-image
background-position
background-size
background-repeat
background-attachment
background-origin
background-clip
background-color
Puoi utilizzare una combinazione di queste proprietà a tuo piacimento, in qualsiasi ordine (anche se quello raccomandato è riportato sopra).
Ogni cosa che non è specificata nella proprietà background è automaticamente impostata al suo valore predefinito. Per esempio, in questo caso:
.elemento {
background-color: yellow;
background: url(sfondo.jpg);
}
Lo sfondo sarà impostato a trasparente e non giallo. La soluzione è molto semplice, basta definire background-color
dopo background
, oppure definire tutto direttamente nella proprietà background
.
Sfondi Multipli
Con CSS3, è stato aggiunto il supporto per sfondi multipli, che si sovrapporranno uno sull’altro. Qualsiasi proprietà correlata agli sfondi dovrà essere separata da una virgola, in questo modo:
.elemento {
background: url(texture.jpg), url(sfondo.jpg) yellow;
background-repeat: repeat-x, no-repeat;
}
Ogni valore separato da una virgola corrisponde ad un livello: il primo valore corrisponde al primo livello, il secondo valore al secondo livello e l’ultimo sfondo sarà sempre l’ultimo livello.
Esempi
Colore fisso
Lo sfondo più semplice che si possa fare è quello con un colore fisso, indicabile sia con il suo codice esadecimale (HEX) o con il suo nome. Inoltre, è possibile specificare anche l’opacità del colore di sfondo. Ecco alcuni esempi del codice, seguiti da un esempio live che potete analizzare.
.sfondo {
background: #FFAE03; /* Codice HEX */
background: gold; /* Nome Colore */
background: rgb(255, 174, 3, 0.8);
/* Opacità */
}
Sfumatura
Volendo combinare più colori insieme, è possibile creare delle sfumature e impostarle come sfondo, le due di base sono linear-gradient
(sfumatura lineare) e radial-gradient
(sfumatura radiale), ma con un po’ di inventiva e cambiando qualche parametro, si possono creare degli effetti interessanti, ecco alcuni esempi base:
Immagine
Oltre ai colori, è possibile impostare anche le immagini come background, ecco alcuni esempi:
Supporto dei Browser
La proprietà background con le sue funzioni di base è supportata in ogni browser.
[caniuse feature=”background-img-opts”]