Cours IT Bases CSS 028_Float, Positionnement, Alignement
Float
En CSS, le float est une technique de mise en page qui, via la propriété float, fait flotter un élément le long du côté gauche ou droit de son conteneur, permettant aux autres éléments de l’entourer.
Exemple :
.div-left { float: left; } .div-right { float: right; } <div class="div-left">div-left</div> <div class="div-right">div-right</div>Effet :
Les éléments flottants peuvent provoquer l’effondrement de la hauteur de l’élément parent, affecter d’autres éléments DIV, et plusieurs éléments flottants sur la même ligne peuvent se chevaucher. La propriété clear est utilisée pour contrôler l’influence entre eux.
Exemple :
.div-left { float: left; } .div-right { float: right; } /* Utiliser la propriété `clear` pour annuler l'influence des éléments flottants .content { clear: both; } */ <div class="div-left">div-left</div> <div class="div-right">div-right</div>
<div class="content"> Ceci est un texte qui sera affecté. </div>Effet :
Exemple :
.float-left { float: left; } .float-right { float: right; } <img class="float-left" src="zhaojian1.jpg" alt="" srcset=""> <div class="float-right">25 janvier 2024</div><div class="float-right">Titre de l'article Titre de l'article Titre de l'article</div>Effet :

Le float était une technique ancienne pour créer des mises en page multi-colonnes, mais dans les mises en page modernes, des techniques plus flexibles comme Flexbox ou Grid sont recommandées.
Positionnement
En CSS, le positionnement fait référence à la définition du mode de positionnement d’un élément via la propriété position, ainsi qu’à la spécification de la position de l’élément par rapport à son ancêtre positionné le plus proche via les propriétés top, right, bottom, left.
- Le positionnement est relatif à l’ancêtre positionné le plus proche (position n’est pas
static). S’il n’y a pas d’ancêtre positionné, le positionnement est relatif au bloc conteneur initial (généralement l’élément<html>). - Les éléments en positionnement absolu et fixe sont retirés du flux normal du document et peuvent affecter la mise en page des autres éléments.
- Les valeurs des propriétés utilisent généralement des pixels (
px) ou des pourcentages (%).
Positionnement statique static
Le positionnement statique (Static Positioning) est la valeur par défaut de la propriété position et n’a généralement pas besoin d’être spécifié explicitement. Les éléments en positionnement statique sont disposés normalement dans le flux du document et ne sont pas affectés par les propriétés top, right, bottom, left.
Positionnement initial initial
En CSS, initial est un mot-clé pour réinitialiser la valeur d’une propriété à sa valeur initiale. Pour la propriété position, sa valeur initiale est static. Utiliser position: initial; équivaut à ne pas définir la propriété position.
Positionnement relatif relative
L’élément est positionné par rapport à sa position normale.
Exemple :
.base { width: 200px; height: 200px; background-color: aquamarine; } .relative-example { position: relative; top: 100px; left: 20%; } <!-- <br>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br> Essayez d'ajouter des br ou d'autres éléments --> <div class="base relative-example"></div>Effet :

Positionnement absolu absolute
L’élément est positionné par rapport à son ancêtre positionné le plus proche.
Exemple :
.base { width: 200px; height: 200px; } .absolute-example { position: absolute; top: 50px; left: 100px; background-color: blueviolet; } <br>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br> <div class="base absolute-example"></div>Effet :

Positionnement fixe fixed
L’élément est positionné par rapport à la fenêtre du navigateur et reste toujours à une position fixe sur l’écran.
Exemple :
.base { width: 200px; height: 200px; } .fixed-example { position: fixed; bottom: 40%; left: 40%; background-color: gold; } <br>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br> <br>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br> <div class="base fixed-example"></div> <br>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br> <br>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br>Effet :

Positionnement collant sticky
L’élément devient un positionnement fixe lorsqu’il est défilé à une position spécifique, sinon il est en positionnement relatif.
Exemple :
.base { width: 200px; height: 200px; } .sticky-example { position: sticky; top: 10%; left: 40%; background-color: darkcyan; } <br>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br> <div class="base sticky-example"></div> <br>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br> <br>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br> <br>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br> <br>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br>Effet :

Positionnement hérité inherit
L’élément hérite du mode de positionnement de son élément parent.
Exemple :
.base { width: 200px; height: 200px; } .inherit-example { position: inherit; top: 100%; /* Attention à la limite */ left: 100%; /* Attention à la limite */ background-color: violet; } <div class="base relative-example"> <div class="base inherit-example"></div> </div>Effet :

Ordre d’empilement (éléments superposés)
z-index est une propriété CSS pour contrôler l’ordre d’empilement. Elle détermine l’ordre d’affichage d’un élément dans l’empilement vertical, c’est-à-dire quel élément sera devant ou derrière un autre.
- La valeur de
z-indexpeut être négative. - Les éléments avec un
z-indexplus grand recouvriront ceux avec une valeur plus petite. z-indexn’est effectif que sur les éléments positionnés (positionn’est passtatic).z-indexnécessite que l’opacityde l’élément ne soit pas 0.
Exemple :
.base { width: 200px; height: 200px; position: absolute; } .z-index-example1{ background-color: red; z-index: 9; } .z-index-example2{ background-color: blue; z-index: 1; } <div class="base z-index-example1"></div> <div class="base z-index-example2"></div>Alignement
L’alignement CSS fait référence au contrôle de l’alignement horizontal et vertical des éléments via les propriétés CSS. Les propriétés d’alignement CSS peuvent être appliquées à n’importe quel élément, y compris le texte, les images, les tableaux, les listes, etc.
Les propriétés d’alignement courantes ont les valeurs suivantes :
- left : Aligné à gauche
- center : Centré
- right : Aligné à droite
- top : Aligné en haut
- middle : Aligné au milieu
- bottom : Aligné en bas
Alignement horizontal text-align
Utilisé pour définir l’alignement horizontal du contenu textuel dans le cadre de l’élément.
Exemple :
.text-center { text-align: center; /* Centré horizontalement */}.text-left { text-align: left; /* Aligné à gauche */}.text-right { text-align: right; /* Aligné à droite */}.text-justify { text-align: justify; /* Justifié */} <div class="text-center">Ceci est un texte ABCDE 12345</div> <div class="text-left">Ceci est un texte ABCDE 12345</div> <div class="text-right">Ceci est un texte ABCDE 12345</div> <div class="text-justify">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod velit vel sapien accumsan, ac efficitur nulla bibendum. Nullam posuere fermentum nulla, in ultricies leo gravida sit amet. Vestibulum ut mi vitae libero accumsan dapibus.</div>Effet :

Alignement vertical vertical-align
Utilisé pour définir l’alignement vertical des éléments en ligne à l’intérieur d’un élément. Généralement utilisé pour les éléments en ligne et n’a pas d’effet direct sur les éléments de bloc.
Exemple :
.base{ height: 150px;}.vertical-align-baseline { vertical-align: baseline; /* Alignement de base par défaut */}.vertical-align-top { vertical-align: top; /* Aligné en haut */}.vertical-align-middle { vertical-align: middle; /* Aligné au milieu */}.vertical-align-bottom { vertical-align: bottom; /* Aligné en bas */} <div class="base"> <img class="vertical-align-baseline" src="zhaojian1.jpg" alt="" srcset="">Ceci est un texte ABCDE 12345 </div> <div class="base"> <img class="vertical-align-top" src="zhaojian1.jpg" alt="" srcset="">Ceci est un texte ABCDE 12345 </div> <div class="base"> <img class="vertical-align-middle" src="zhaojian1.jpg" alt="" srcset="">Ceci est un texte ABCDE 12345 </div> <div class="base"> <img class="vertical-align-bottom" src="zhaojian1.jpg" alt="" srcset="">Ceci est un texte ABCDE 12345 </div>Effet :
