background-image
La propriété background-image
permet de définir une ou plusieurs images comme arrière(s)-plan(s) pour un élément.
Exemple interactif
Les images sont dessinées les unes au-dessus des autres. La première image indiquée est dessinée comme étant la plus proche de l'utilisateur.
Les bordures de l'élément sont dessinées par-dessus l'arrière-plan et la couleur background-color
est dessinée sous l'arrière-plan. La position et les limites de chaque image sont gérées grâce aux propriétés background-clip
et background-origin
.
Si une image donnée ne peut pas être chargée (par exemple lorsqu'il est impossible de charger un fichier via l'URI indiqué), les navigateurs considèreront la valeur comme none
.
Note :
Même si les images sont opaques et que les couleurs ne seront pas affichées de façon normale, les développeurs doivent toujours définir une couleur d'arrière-plan via background-color
au cas où les images ne peuvent être chargées.
Syntaxe
/* Valeur simple */
background-image: url("https://example.com/bck.png");
/* Plusieurs valeurs */
background-image: url("https://example.com/top.png"),
url("https://example.com/bottom.png");
background-image: linear-gradient(
to bottom,
rgba(255, 255, 0, 0.5),
rgba(0, 0, 255, 0.5)
),
url("catfront.png");
/* Valeur avec un mot-clé */
background-image: none;
/* Valeurs globales */
background-image: inherit;
background-image: initial;
background-image: revert;
background-image: unset;
Valeurs
Accessibilité
Les navigateurs ne fournissent pas d'informations spécifiques aux outils d'assistance quant aux images d'arrière-plan. Les lecteurs d'écran ne pourront donc pas annoncer le sens de l'image aux utilisatrices et utilisateurs. Si l'image contient des informations critiques pour la compréhension générale de la page, mieux vaudra décrire ces informations de façon sémantique dans le document.
Définition formelle
Valeur initiale | none |
---|---|
Applicabilité | tous les éléments. S'applique aussi à ::first-letter et ::first-line . |
Héritée | non |
Valeur calculée | comme spécifié mais avec les valeurs <url> rendues absolues |
Type d'animation | discrète |
Syntaxe formelle
background-image =
<bg-image>#
<bg-image> =
<image> |
none
<image> =
<url> |
<gradient>
<url> =
<url()> |
<src()>
<url()> =
url( <string> <url-modifier>* ) |
<url-token>
<src()> =
src( <string> <url-modifier>* )
Exemples
On voit ici l'effet obtenu avec plusieurs images : l'étoile est légèrement transparente et se superpose par-dessus l'image du chat.
HTML
<div>
<p class="catsandstars">
Un paragraphe avec des chats<br />
et des étoiles.
</p>
<p>Pas ici.</p>
<p class="catsandstars">
Et voilà encore des chats.<br />
Et des étoiles !
</p>
<p>Puis plus rien.</p>
</div>
CSS
p {
font-size: 1.5em;
color: #fe7f88;
background-color: transparent;
background-image: none;
}
div {
background-image: url("mdn_logo_only_color.png");
}
.catsandstars {
background-image: url("startransparent.gif"), url("catfront.png");
background-color: transparent;
}
Résultat
Spécifications
Specification |
---|
CSS Backgrounds and Borders Module Level 3 # background-image |
Compatibilité des navigateurs
BCD tables only load in the browser
Voir aussi
- Implémenter des sprites en CSS
- L'élément HTML
<img>
, - Les types de données CSS relatifs aux images :
- Les fonctions CSS relatives aux images :