CSS - Arrière-plans
Propriétés de fond
background-color
La propriété background-color
définit la couleur de fond d'un élément. Vous pouvez spécifier la couleur en utilisant des formats comme les noms de couleurs, les valeurs RGB, HEX ou HSL.
Conseil: Nom de couleur
background-color: red;
Ceci définit la couleur de fond en rouge en utilisant un nom de couleur. Vous pouvez également utiliser des valeurs RGB :
Conseil: Valeurs RGB
background-color: rgb(255, 0, 0);
Des valeurs HEX :
Conseil: Valeurs HEX
background-color: #ff0000;
ou des valeurs HSL :
Conseil: Valeurs HSL
background-color: hsl(0, 100%, 50%);
Vous pouvez contrôler la transparence avec des valeurs RGBA ou HSLA. Par exemple :
Conseil: Valeurs RGBA
background-color: rgba(255, 0, 0, 0.5);
background-image
La propriété background-image
définit une ou plusieurs images de fond pour un élément en utilisant la fonction url()
.
Conseil: Image unique
background-image: url('image.jpg');
Ceci définit "image.jpg" comme image de fond. Pour définir plusieurs images :
Conseil: Images multiples
background-image: url('image1.jpg'), url('image2.jpg');
background-repeat
La propriété background-repeat
contrôle comment une image de fond se répète dans un élément.
repeat
: Répète horizontalement et verticalement (par défaut).repeat-x
: Répète uniquement horizontalement.repeat-y
: Répète uniquement verticalement.no-repeat
: Affiche une seule fois sans répétition.
Conseil: Sans répétition
background-repeat: no-repeat;
background-attachment
La propriété background-attachment
spécifie si une image de fond doit défiler avec la page ou rester fixe.
scroll
: La valeur par défaut ; la fait défiler avec le contenu.fixed
: La maintient fixe en position.
Conseil: Attachement fixe
background-attachment: fixed;
background-position
La propriété background-position
vous permet de contrôler où une image de fond est placée dans un élément. Vous pouvez spécifier la position en utilisant des mots-clés, des pourcentages ou des valeurs de longueur. Les valeurs de mots-clés courantes sont top, bottom, left, right et center.
Conseil: En haut à droite
background-position: top right;
Vous pouvez aussi utiliser des pourcentages ou des valeurs de longueur pour positionner précisément l'image, comme :
Conseil: Pourcentages
background-position: 50% 50%;
Conseil: Valeurs de longueur
background-position: 100px 200px;
background-size
La propriété background-size
est utilisée pour redimensionner les images de fond. Vous pouvez spécifier la taille en utilisant des mots-clés ou des dimensions spécifiques. Les valeurs de mots-clés courantes sont auto, cover et contain.
Auto
affiche l'image à sa taille d'origine.Cover
redimensionne l'image pour couvrir tout l'élément, en la recadrant si nécessaire pour maintenir le rapport d'aspect.Contain
redimensionne l'image pour qu'elle s'adapte à l'élément, en préservant son rapport d'aspect.
Vous pouvez aussi spécifier des dimensions exactes en utilisant des valeurs de longueur ou des pourcentages, comme :
Conseil: Dimensions spécifiques
background-size: 200px 300px;
Conseil: Dimensions en pourcentage
background-size: 50% 50%;
background-origin
La propriété background-origin
spécifie où une image de fond est positionnée par rapport au modèle de boîte de l'élément. Les valeurs possibles sont padding-box, border-box et content-box.
- Padding-box la positionne par rapport au remplissage de l'élément.
- Border-box la positionne par rapport à la bordure de l'élément.
- Content-box la positionne par rapport au contenu de l'élément.
Conseil: Border Box
background-origin: border-box;
background-clip
La propriété background-clip
définit jusqu'où un fond s'étend dans le modèle de boîte d'un élément. Les valeurs possibles sont border-box, padding-box et content-box.
- Border-box l'étend jusqu'au bord extérieur de la bordure de l'élément.
- Padding-box le coupe au bord extérieur du remplissage de l'élément.
- Content-box le coupe au bord extérieur du contenu de l'élément.
Conseil: Padding Box
background-clip: padding-box;
Ces propriétés vous donnent de nombreuses options pour contrôler les fonds en CSS. Utilisez-les seules ou ensemble pour créer des fonds agréables et réactifs pour vos pages web.
Propriété abrégée de l'arrière-plan
La propriété abrégée background
vous permet de définir plusieurs propriétés d'arrière-plan en une seule déclaration. Cela peut rendre votre code CSS plus court et plus facile à lire.
L'ordre des valeurs dans la propriété abrégée est :
Conseil: Ordre des valeurs de la propriété abrégée background
background: <background-color> <background-image> <background-repeat> <background-attachment> <background-position> / <background-size>;
Vous pouvez combiner ces propriétés d'arrière-plan :
Conseil: Combinaison de propriétés individuelles d'arrière-plan
background-color: #ff0000;
background-image: url('image.jpg');
background-repeat: no-repeat;
background-attachment: fixed;
background-position: center;
background-size: cover;
En une seule déclaration abrégée :
Conseil: Déclaration abrégée pour les propriétés d'arrière-plan
background: #ff0000 url('image.jpg') no-repeat fixed center / cover;
Notez que la valeur background-size
est séparée de la valeur background-position
par une barre oblique (/
).
Lorsque vous utilisez la propriété abrégée, toutes les valeurs omises seront définies à leurs valeurs par défaut. Si vous voulez que toutes les propriétés d'arrière-plan soient explicitement définies, incluez toutes les valeurs nécessaires dans la déclaration abrégée.
L'utilisation de la propriété abrégée background
peut aider à simplifier votre code CSS et le rendre plus facile à maintenir. Cependant, si vous n'avez besoin de définir qu'une ou deux propriétés d'arrière-plan, il peut être plus lisible d'utiliser des propriétés individuelles plutôt que la forme abrégée.
Arrière-plans multiples
Le CSS vous permet de superposer plusieurs images d'arrière-plan sur un seul élément. Cette technique peut créer des effets visuels intéressants et ajouter de la profondeur à vos designs.
Pour spécifier plusieurs images d'arrière-plan, vous pouvez utiliser une liste de valeurs d'images d'arrière-plan séparées par des virgules dans la propriété background-image
ou la propriété abrégée background
.
Conseil: Superposition de deux images d'arrière-plan
.element {
background-image: url('image1.jpg'), url('image2.jpg');
}
Vous pouvez également combiner plusieurs images d'arrière-plan avec d'autres propriétés. Lorsque vous utilisez la propriété abrégée background
, les valeurs pour chaque couche sont séparées par des virgules.
Conseil: Combinaison de plusieurs images d'arrière-plan avec des propriétés
.element {
background: url('image1.jpg') no-repeat center,
url('image2.jpg') repeat-x top;
}
Vous pouvez aussi spécifier différentes tailles, positions et autres propriétés pour chaque couche.
Conseil: Spécification de différentes tailles et positions
.element {
background: url('image1.jpg') no-repeat center/cover,
url('image2.jpg') repeat-x top/50% auto;
}
Lorsque vous utilisez plusieurs arrière-plans, la première image spécifiée sera au-dessus. Les images suivantes seront superposées en dessous dans l'ordre où elles sont déclarées.
Les arrière-plans multiples vous offrent des options pour créer des designs visuellement riches en utilisant CSS. Expérimentez avec différentes combinaisons d'images, de positions, de tailles et d'autres propriétés pour obtenir les effets souhaités.
Dégradés d'arrière-plan
Le CSS vous permet de créer des transitions de couleurs appelées dégradés pour les arrière-plans. Vous pouvez créer des dégradés linéaires ou radiaux sans utiliser de fichiers image, ce qui permet des temps de chargement plus rapides.
Pour créer un dégradé linéaire, utilisez la fonction linear-gradient()
comme valeur pour la propriété background
ou background-image
. Spécifiez la direction du dégradé et les couleurs entre lesquelles vous souhaitez faire la transition.
Conseil: Dégradé linéaire
.element {
background: linear-gradient(to right, red, blue);
}
Cela crée un dégradé qui passe du rouge à gauche au bleu à droite. Vous pouvez spécifier la direction en utilisant des mots-clés comme to top
, to bottom
, to left
, to right
, ou un angle en degrés.
Les points d'arrêt de couleur contrôlent où se produit chaque transition de couleur. Par défaut, les transitions sont espacées uniformément, mais vous pouvez spécifier des pourcentages ou des longueurs pour contrôler leurs positions.
Conseil: Dégradé linéaire avec points d'arrêt de couleur
.element {
background: linear-gradient(to right, red 0%, blue 50%, green 100%);
}
Pour créer un dégradé radial, utilisez la fonction radial-gradient()
. Spécifiez la position centrale, la forme (cercle ou ellipse), et les points d'arrêt de couleur.
Conseil: Dégradé radial
.element {
background: radial-gradient(circle at center, red, blue);
}
Cela crée un dégradé circulaire centré dans l'élément qui passe du rouge au centre au bleu sur les bords.
Vous pouvez créer des dégradés plus complexes en spécifiant plusieurs points d'arrêt de couleur et en utilisant la transparence.
Conseil: Dégradé complexe
.element {
background: linear-gradient(45deg, rgba(255, 0, 0, 0.5), rgba(0, 0, 255, 0.5));
}
Les dégradés peuvent être combinés avec d'autres propriétés d'arrière-plan comme background-size
et background-repeat
pour créer divers effets.
Conseil: Dégradé répétitif
.element {
background: repeating-linear-gradient(45deg, red, blue 10%);
}
Les dégradés CSS offrent un moyen de créer des arrière-plans visuellement attrayants sans dépendre de fichiers image. Expérimentez avec différentes couleurs, directions et points d'arrêt de couleur pour obtenir les effets souhaités.
Fusion d'arrière-plan
La propriété background-blend-mode
en CSS vous permet de mélanger des images d'arrière-plan et des couleurs dans un élément. Cela crée des effets visuels en combinant plusieurs arrière-plans en utilisant différents modes de fusion.
Les modes de fusion disponibles sont :
normal
: Le mode par défaut ; aucune fusion n'est appliquée.multiply
: Multiplie la couleur d'arrière-plan avec l'image, résultant en un effet plus sombre.screen
: Multiplie l'inverse de la couleur d'arrière-plan avec l'image, résultant en un effet plus clair.overlay
: Applique une combinaison demultiply
etscreen
basée sur la couleur d'arrière-plan.darken
: Sélectionne les valeurs de couleur plus foncées de l'image et de la couleur d'arrière-plan.lighten
: Sélectionne les valeurs de couleur plus claires de l'image et de la couleur d'arrière-plan.
Les autres modes de fusion incluent :
color-dodge
,
color-burn
,
hard-light
,
soft-light
,
difference
,
exclusion
,
hue
,
saturation
,
color
,
et
luminosity
.
Pour utiliser la fusion d'arrière-plan, appliquez plusieurs arrière-plans à un élément, puis spécifiez le mode de fusion souhaité avec la propriété.
Conseil: Fusion d'arrière-plan avec plusieurs images
.element {
background-image: url('image1.jpg'), url('image2.jpg');
background-blend-mode: multiply;
}
Dans cet exemple, image1.jpg
et image2.jpg
sont mélangées en utilisant le mode, créant un effet de chevauchement plus sombre.
Vous pouvez également mélanger des images avec des couleurs.
Conseil: Fusion d'arrière-plan avec image et couleur
.element {
background: url('image.jpg'), #ff0000;
background-blend-mode: screen;
}
Ici, le mode est utilisé pour mélanger l'image avec une couleur rouge, résultant en un effet plus clair.
Si vous avez plusieurs arrière-plans, vous pouvez spécifier plusieurs modes pour chaque couche.
Conseil: Modes de fusion d'arrière-plan multiples
.element {
background: url('image1.jpg'), url('image2.jpg'), #ff0000;
background-blend-mode: multiply, overlay;
}
Dans ce cas, vous utilisez un mode pour mélanger deux images, puis un autre mode pour les combiner à nouveau ensemble, mais en incluant également le rouge.
La fusion d'arrière-plan ouvre de nombreuses possibilités créatives pour combiner des images et des couleurs. L'expérimentation vous aidera à obtenir les effets souhaités.
Opacité de l'arrière-plan
L'opacité des couleurs et des images d'arrière-plan en CSS peut être contrôlée en utilisant la propriété opacity
ou en utilisant des valeurs de couleur RGBA ou HSLA.
La propriété opacity
définit l'opacité globale d'un élément, y compris son contenu et son arrière-plan. Elle prend une valeur entre 0 (entièrement transparent) et 1 (entièrement opaque).
Conseil: Exemple : Propriété Opacity
.element {
background-color: #ff0000;
opacity: 0.5;
}
Dans cet exemple, la couleur d'arrière-plan de l'élément est définie sur rouge, et l'opacité est réglée à 0.5, le rendant 50% transparent.
Cependant, l'utilisation de la propriété opacity
affecte l'élément entier, y compris son contenu. Si vous voulez contrôler uniquement l'opacité de la couleur ou de l'image d'arrière-plan sans affecter le contenu, vous pouvez utiliser des valeurs de couleur RGBA ou HSLA.
RGBA signifie Rouge, Vert, Bleu, Alpha ; où alpha représente l'opacité. HSLA signifie Teinte, Saturation, Luminosité, Alpha ; avec alpha servant le même objectif.
Conseil: Exemple : Valeur de couleur RGBA
.element {
background-color: rgba(255, 0, 0, 0.5);
}
Dans cet exemple, la couleur d'arrière-plan est définie sur rouge avec une opacité de 0.5 en utilisant la valeur de couleur RGBA. Le contenu reste entièrement opaque.
Vous pouvez également utiliser des valeurs de couleur RGBA ou HSLA avec des images d'arrière-plan.
Conseil: Exemple : RGBA avec image d'arrière-plan
.element {
background-image: linear-gradient(rgba(255, 0, 0, 0.5), rgba(0, 0, 255, 0.5)),
url('image.jpg');
}
Ici, un dégradé linéaire avec des couleurs rouge et bleue transparentes est superposé à une image d'arrière-plan. L'image elle-même reste entièrement opaque tandis que les couleurs du dégradé sont semi-transparentes.
L'utilisation de RGBA ou HSLA vous permet de contrôler la transparence indépendamment du contenu, offrant ainsi une flexibilité pour créer des designs visuellement intéressants.
Motifs de fond
Les motifs de fond ajoutent de la texture et de l'intérêt visuel à vos pages web. Vous pouvez créer des motifs de fond répétitifs en utilisant de petites images et des techniques CSS pour une répétition sans couture.
Pour créer un motif de fond répétitif, commencez par sélectionner ou créer une petite image qui peut être carrelée de manière transparente. L'image doit avoir des bords qui s'alignent lorsqu'elle est répétée horizontalement et verticalement.
Motif simple
Conseil: Motif simple
.element {
background-image: url('pattern.png');
background-repeat: repeat;
}
Ce code définit l'image de fond sur "pattern.png" et la répète horizontalement et verticalement pour créer un motif sans couture.
Vous pouvez utiliser la propriété background-repeat
avec la valeur repeat
. Cela carrelera l'image dans les deux directions pour remplir le fond de l'élément.
Si vous voulez que le motif ne se répète que dans une seule direction, vous pouvez utiliser repeat-x
pour une répétition horizontale ou repeat-y
pour une répétition verticale.
Répétition horizontale du motif
Conseil: Répétition horizontale du motif
.element {
background-image: url('pattern.png');
background-repeat: repeat-x;
}
Une autre technique pour créer des motifs sans couture consiste à utiliser des dégradés CSS avec des images de fond. En superposant un dégradé semi-transparent sur l'image du motif, vous pouvez créer un effet plus subtil.
Motif avec superposition de dégradé
Conseil: Motif avec superposition de dégradé
.element {
background-image: linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.5)),
url('pattern.png');
background-repeat: repeat;
}
Ce code applique un dégradé blanc semi-transparent sur l'image du motif répétitif, créant un effet plus doux.
Lors de la création de motifs de fond, tenez compte de la taille du fichier image. L'utilisation d'images plus grandes peut avoir un impact sur les temps de chargement des pages ; il est préférable d'utiliser de petites images optimisées pour les motifs. Vous pouvez également utiliser des sprites CSS pour combiner plusieurs images de motifs en un seul fichier, réduisant ainsi les requêtes HTTP.
Les motifs de fond ajoutent de la profondeur et de l'intérêt visuel à vos designs web. En utilisant de petites images sans couture et des techniques CSS comme background-repeat
et les dégradés, vous pouvez créer des arrière-plans attrayants pour vos pages web.
Images de fond responsives
Le design web responsive offre une expérience utilisateur optimale sur tous les appareils. L'utilisation d'images de fond responsives consiste à fournir des tailles et des résolutions d'images appropriées en fonction de la taille de l'écran de l'utilisateur.
Une technique consiste à servir différents fichiers d'images en fonction de la taille de l'écran de l'appareil. Vous pouvez définir plusieurs propriétés background-image
en utilisant des media queries.
Images de fond responsives avec des media queries
Conseil: Images de fond responsives avec des media queries
.element {
background-image: url('small-image.jpg');
}
@media (min-width: 768px) {
.element {
background-image: url('medium-image.jpg');
}
}
@media (min-width: 1200px) {
.element {
background-image: url('large-image.jpg');
}
}
Ce code définit une petite image de fond par défaut. Lorsque la taille de l'écran atteint 768px et 1200px de large, les images de taille moyenne et grande sont utilisées à la place.
Vous pouvez également utiliser la fonction image-set()
pour spécifier plusieurs fichiers d'images avec différentes résolutions. Le navigateur choisit l'image la plus appropriée en fonction de la densité de pixels de l'appareil.
Images de fond responsives avec image-set()
Conseil: Images de fond responsives avec image-set()
.element {
background-image: image-set(
url('image-1x.jpg') 1x,
url('image-2x.jpg') 2x
);
}
"image-1x.jpg" est utilisée sur les écrans standard tandis que "image-2x.jpg" (double résolution) est utilisée sur les écrans à haute densité de pixels comme les écrans Retina.
Une autre approche consiste à utiliser des dégradés CSS au lieu de fichiers image. Les dégradés sont indépendants de la résolution et s'adaptent bien aux différentes tailles d'écran.
Fond responsive avec un dégradé
Conseil: Fond responsive avec un dégradé
.element {
background-image: linear-gradient(to right, #ff0000, #0000ff);
}
Pensez à utiliser des motifs vectoriels (SVG) plutôt que des images raster. Les SVG peuvent être mis à l'échelle sans perte de qualité, ce qui les rend idéaux pour les designs responsifs.
Fond responsive avec SVG
Conseil: Fond responsive avec SVG
.element {
background-image: url('pattern.svg');
}
Lors de la planification de vos fonds responsifs, prenez en compte vos appareils cibles, les résolutions d'écran et l'impact visuel que vous souhaitez obtenir. Combinez des techniques comme les media queries, image-set()
, les dégradés CSS et les SVG pour créer des fonds attrayants qui s'adaptent bien aux différents écrans.