Les fonds et arrières plans CSS - FAQ CSS

Introduction aux arrières plans ou fonds

Que vais-je trouver dans ce cours sur les arrières plans ou fond?

"limites de l'arrière-plan"Par défaut en Css inclut le contenu, la marge intérieure dite padding et la bordure.
L'arrière-plan est situé derrière le contenu, derrière le padding et derrière le border.
Tous les éléments peuvent avoir un fond ou arrière-plan.
L'arrière-plan ou fond, va vous permettre de mettre une ou des images de fond, ou mettre une couleur de fond.

Comment changer la couleur du fond ou arrière plan en Css?

Changer la couleur de fond grâce aux feuilles de style Css

Vous pouvez en feuille de style Css spécifier une pour n'importe quelle balise HTML ou XHTML. Pour cela vous devez utiliser la feuille de style Css qui permet de spécifier la couleur de fond.

Exemple d'écriture de changement de couleur de fond en Css :
background-color : green;

Voir un exemple de couleur d'arrière-plan en Css

Vous trouverez plus d'informations dans les cours sur les formats de couleur utilisés en Css.

Mettre une couleur transparente en fond grâce aux feuilles de style Css

Il est possible en Css de mettre en utilisant le mot clé transparent.

Exemple d'écriture d'un fond transparent en CSS :
background : transparent; 
background-color : transparent;

Il est aussi possible de mettre au fond une couleur transparente ce qui permet de jouer sur l'opacité de la couleur de l'arrière-plan.
Deux formats sont autorisés pour la couleur d'arrière-plan : le format de couleur Css d'arrière-plan HSLA et le format de couleur Css RGBA. Vous trouverez plus d'informations dans les cours sur les couleurs en Css.

Exemple d'écriture de bordures avec couleur transparente en CSS :
/* Couleur transparente RGBA pour le fond */
  background: rgba(255, 105, 180, .5);
/* Couleur transparente HSLA pour le fond */
  background-color : hsla(260, 60%, 65%, .6);

Comment mettre une image en fond ou en arrière plan en CSS?

Mettre une image en arrière-plan grâce aux feuilles de style Css

Sachez que vous pouvez en feuille de style Css spécifier ou plusieurs images d'arrière-plan.
Pour cela, vous devez utiliser la feuille de style Css qui permet de spécifier le chemin de l'image que vous désirez mettre en arrière-plan.

Exemple d'écriture pour mettre une image en arrière-plan en CSS :
background-image : url(images/background.gif);

Voir un exemple d'image d'arrière-plan en Css

La feuille de style Css est un raccourci qui permet de spécifier ces propriétés en une seule déclaration.

Exemple d'écriture de la CSS background :
background : green url(images/background.gif) no-repeat scroll 10px 20px;

Sachez qu'il est possible de mettre plusieurs images d'arrière-plan, je vous laisse allez voir chaque propriété.

Annuler la répétition de l'image d'arrière-plan grâce aux feuilles de style Css

Vous pouvez avec la propriété Css ne pas répéter l'image d'arrière-plan.

Exemple d'écriture de la suppression de la répétition de l'image de fond en Css :
background-repeat : no-repeat;

Voir un exemple répétition de l'image d'arrière-plan en Css

Positionner une image dans arrière-plan grâce aux feuilles de style Css

La propriété Css permet de positionner votre image de fond d'origine (à partir de laquelle vont s'effectuer les répétitions).

Exemple d'écriture pour positionner une image en arrière-plan en Css :
background-position : 10px 0;

Voir un exemple positionnement de l'image d'arrière-plan en Css

Comment adapter l'image en fond ou en arrière plan en CSS?

Adapter l'image de fond à la taille de l'arrière-plan

Vous pouvez en feuille de style Css spécifier l'espace que va prendre l'image de fond au sein de l'arrière-plan.
Pour cela vous devez utiliser la feuille de style Css qui permet de spécifier comment l'image de fond va occuper l'espace de l'arrière-plan.

Exemple d'écriture de changement de color de fond en Css :
background-size : 100% 100%;

Voir un exemple d'image adaptée à la taille de l'arrière-plan en Css

Comment redéfinir la limite du fond ou arrière plan en Css?

Redéfinir la limite du fond ou arrière-plan en Css?

"limites de l'arrière-plan"Comme je l'ai précisé en début de chapitre, l'arrière-plan s'étend jusqu'à l'extérieur de la bordure. Vous pouvez changer l'espace occupé par l'arrière-plan en excluant la bordure ou en excluant la marge intérieure.
Pour cela, vous devez utiliser la feuille de style Css qui permet changer l'étendu de la zone occupée par arrière-plan.

Exemple d'écriture de changement de la zone occupée par arrière-plan :
/* l'arrière-plan ne va pas au-delà de la zone de contenu */
background-clip : content-box;
/* l'arrière-plan ne va pas au-delà de la zone de la marge intérieure */
background-clip : padding-box;

Voir un exemple de modification de zones occupées par l'arrière-plan en Css

Comment mettre un fond à ma page en Css?

Mettre une couleur ou une image de fond à ma page grâce aux feuilles de style Css

Vous pouvez en feuille de style Css à votre page. Pour cela vous devez utiliser la feuille de style Css qui permet de spécifier plusieurs autres propriétés notamment une image de fond, la position du background et sa répétition...

Code CSS :
body{
  background : green;
}
Vous pouvez aussi spécifier seulement la couleur de fond d'une balise HTML ou XHTML en utilisant la feuille de style Css

Code CSS :
body{ 
  background-color : red;
}

Ces propriétés de feuilles de style remplace l'attribut HTML BGCOLOR de la balise HTML BODY.

Comment faire un fond dégradé en Css?

Faire un fond dégradé grâce aux feuilles de style Css

Vous pouvez en feuille de style Css spécifier un dégradé de couleur pour n'importe quelle balise HTML ou XHTML.
Pour cela vous devez utiliser la fonction de feuille de style Css qui permet de décrire chaque étape de votre dégradé de couleur. Elle sera associée à la propriété Css .

Exemple d'écriture d'un dégradé de couleur en CSS :
background-image : linear-gradient(135deg, #87e0fd 0%, #53cbf1 40%, #05abe0 100%);
La fonction Css n'est pas reconnue par tous les navigateurs, vous serez obligé de déclarer des fonctions Css préfixées.
Vous pouvez aussi faire des dégradés de couleurs radiaux.
Vous trouverez plus d'informations dans les cours sur les dégradés de couleur en Css.

Comment adapter la taille du conteneur en fonction du ratio de l'image de fond?

Adapter la hauteur du conteneur en fonction du ratio de l'image de fond

Il est possible d'adapter la hauteur du conteneur de l'image de fond en gardant le ratio de l'image quelle que soit la valeur du width.
Pour cela, vous devez au minimum connaitre la taille de l'image ou le ratio.
Cette technique consiste à s'appuyer sur la propriété Css et la propriété Css qui quand on utilise une valeur en % se réfère à la même dimension.

Exemple CSS :
.selecteur-conteneur{
  width : 100%;
  padding-top : 150%;
  /* Calcul du padding 
   H = 150 * width / L = 100
  */
  background-image  : url(/img/faq/background-size-cover-0.png);
  background-repeat : no-repeat;
  background-size : cover;
  vertical-align : top;
  /* on annule toute hauteur par défaut*/
  line-height : 0px;
/* si vous devez mettre un contenu */
  position:relative;
}
/* si vous devez mettre un contenu */
.selecteur-conteneur-texte{
  position : absolute;
  top:0; bottom:0; left:0; right:0; 
/* On remet le line-height à sa taille initial */
  line-height : 1.625; 
  overflow : auto;
}

Code HTML :
<div class="selecteur-conteneur">
  <div class="selecteur-conteneur-texte">Post haec indumentum regale quaerebatu..</div>
</div>
Exemple : L'image d'origine est de 100px X 150px et 150px X 100px.
la hauteur du conteneur de l'image de fond en gardant le ratio 0.66la hauteur du conteneur de l'image de fond en gardant le ratio 1.5

Exemple où la hauteur du conteneur de l'image de fond s'agrandit en conservant le ratio de l'image :

Post haec indumentum regale quaerebatur et ministris fucandae purpurae tortis confessisque pectoralem tuniculam sine manicis textam
Post haec indumentum regale quaerebatur et ministris fucandae purpurae tortis confessisque pectoralem tuniculam sine manicis textam

Comment appliquer une opacité sur l'image arrière plan ?

Appliquer une opacité sur l'image arrière plan grâce aux enfants virtuels

Il est possible de modifier l'opacité d'une image de fond, mais cela oblige à mettre le contenu de l'élément dans un autre et nécessite un peu plus de code CSS.
Nous déplaçons le background-image dans un enfant "virtuel" grâce à la propriété CSS et au sélecteur CSS et nous lui appliquons une propriété CSS .
Si vous mettez une couleur de fond sur l'élément principal, l'image d'arrière-plan selon son opacité pendra la teinte de la couleur spécifiée.

Exemple CSS :
.selecteur-filtre{
/* Couleur de fond si désiré */
  background-color : green;
  position : relative;
}
.selecteur-filtre-content:before{
  content : "";
  z-index : 1;
  position : absolute;
  top : 0; left : 0; right : 0; bottom : 0;
  opacity : 0.6;
  background-image  : url(/img/exemple/filter-image.jpg);
  background-size : cover;
  background-repeat : no-repeat;
}
.selecteur-filtre-content{
  position : relative;
  z-index : 2;
}

Code HTML :
<div class="selecteur-filtre">
  <div class="selecteur-filtre-content">
    Post haec indumentum regale quaerebatu..
  </div>
</div>
Exemple : D'application d'une opacité sur un background-image.
Post haec indumentum
Post haec indumentum
Post haec indumentum
Image d'un background-image semi transparent

Comment appliquer un effet coloré sur l'image arrière plan ?

Appliquer un effet coloré sur l'image arrière plan avec box-shadow

Le principe de l'image arrière plan colorée part du concept d'une image arrière plan dont on aurait appliqué une transparence et sous laquelle il y aurait une couleur de fond. Dans ce cas-là, l'image d'arrière-plan selon son opacité pendrait la teinte de la couleur spécifiée.
Cet effet est faisable avec la technique de l'opacité sur l'image arrière plan, mais il est possible d'utiliser la propriété .

Exemple CSS :
.selecteur-filtre{
  background-image  : url(/img/exemple/filter-image.jpg);
  background-size : cover;
  background-repeat : no-repeat;
  /* 200px = plus grande taille entre width et height | ou une très très grande taille */
  /* 0.4 = 1 - opacité de l'image désirée | 1 - 0.6 */
  box-shadow: 0 0 0 200px rgba(0,128,0,0.4) inset;
}

Code HTML :
<div class="selecteur-filtre">
  Post haec indumentum regale quaerebatu..
</div>
Exemple : D'application d'une teinte de couleur sur un background-image.
Post haec indumentum
Post haec indumentum
Image d'un background-image teinté d'une couleur