Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Les sprites CSS
Lessprites sont utilisées dans de nombreuses applications web où de multiples images sont utilisées. Au lieu d'avoir une image par fichier, on économise de la bande passante et de la mémoire en les envoyant toute dans le même fichier, ainsi, le nombre de requêtes HTTP diminue. On utilise alorsbackground-position
pour choisir l'image qu'on souhaite utiliser.
Note :Avec HTTP/2, il peut être plus judicieux d'utiliser de nombreuses « petites » requêtes.
In this article
Implémentation
Supposons qu'une image est affichée pour chaque élement de la classetoolbtn
:
.toolbtn { background: url("myfile.png"); display: inline-block; height: 20px; width: 20px;}
Une position peut être ajoutée avec les valeurs x et y aprèsurl()
pour décaler l'image de fond (background
). Cela fonctionne aussi avecbackground-position
. Par exemple :
#btn1 { background-position: -20px 0px;}#btn2 { background-position: -40px 0px;}
L'élément avec l'ID « btn1 » bouge vers la gauche de 20 pixels et l'élément avec l'ID « btn2 » vers la gauche de 40 pixels (en présumant que ces deux éléments aient aussi la classetoolbtn
).
De la même manière, vous pouvez faire un effet de transition au survol :
#btn:hover { background-position: <pixels shifted right>px <pixels shifted down>px;}