Académique Documents
Professionnel Documents
Culture Documents
CSSmodele Des Boites
CSSmodele Des Boites
BUREAUTIQUE ET WEB
Cascading Style Sheets
CSS (Le modèle de boite)
I. Le modèle de boite
Le modèle de boite
En CSS, tous les éléments sont rangés dans des boîtes (en anglais box). Lorsque l’on
travaille sur la mise en page et le positionnement des éléments HTML il est alors
essentiel de bien comprendre le fonctionnement de ces boîtes.
Comprendre le fonctionnement de ces boîtes est essentiel pour maîtriser la mise en
page CSS ainsi que le positionnement des éléments d'une page HTML.
Le type de boîte appliqué à un élément est défini par la valeur de la propriété display (tel que block ou inline)
.box {
width: 350px;
height: 150px;
margin: 10px;
padding: 25px;
border: 5px solid black;
}
L'espace occupé par notre boîte dans le modèle standard vaut alors 410px (350 + 25 + 25 + 5 + 5), et
la hauteur, 210px (150 + 25 + 25 + 5 + 5).
width: 350px;
height: 150px;
Il n'est pas très commode d'avoir à ajouter constamment les dimensions de la margin: 10px;
bordure et du padding aux dimensions du conteneur padding: 25px;
border: 5px solid black;
box-sizing: border-box
Pour inclure directement les padding et border aux dimensions du conteneur, nous utilisons la
propriété CSS box-sizing: border-box. Cela revient à demander au navigateur de considérer la boîte
de la bordure comme la zone d'effet de width et height.
Margin
La propriété margin définit la taille des marges sur les quatre côtés de l'élément. C'est une propriété
raccourcie qui permet de manipuler les autres propriétés de marges :
- Les marges haute et basse n'ont aucun effet sur les éléments en ligne (inline). margin: 5% auto;
/* haut | horizontal | bas */
- La propriété margin peut être définie grâce à une, deux, trois ou quatre valeurs. margin: 1em auto 2em;
- Avec une valeur, celle-ci définira la marge pour les quatre côtés de la /* haut | droit | bas | gauche */
Padding
La propriété padding est une propriété raccourcie qui permet de définir les différents écarts
de l'espace entre le contenu de l'élément et sa bordure sur les quatre côtés d'un élément.
Elle synthétise padding-top, padding-right, padding-bottom, padding-left.
- Une valeur applique le même écart aux 4 côtés.
- Deux valeurs appliquent le premier écart en haut et en bas et le second sur les côtés droit et gauche.
- Trois valeurs appliquent le premier écart en haut, le deuxième à droite et à gauche et le troisième en bas.
- Quatre valeurs appliquent le premier écart en haut, le deuxième à droite, le troisième en bas et le quatrième à
gauche.
Les valeurs négatives ne sont pas autorisées. /* On applique la même valeur aux quatre côtés */
padding: 1em;
1 - padding-top /* vertical | horizontal */
4 2 padding: 5% 10%;
padding-left padding-right /* haut | horizontal | bas */
Élément padding: 1em 2em 2em;
/* haut | droit | bas | gauche */
padding: 5px 1em 0 2em;
3 - padding-bottom
Tronc commun Ingénieur en Informatique USTO-MB Bureautique et Web
CSS Le modèle de boite
Border
La propriété CSS border est une propriété raccourcie qui permet de définir les
propriétés liées à la bordure. border peut être utilisée pour définir les valeurs de :
- border-width, est une propriété raccourcie qui définit la largeur de la bordure d'un élément. Cette propriété
raccourcie définit border-top-width, border-right-width, border-bottom-width et border-left-width.
- border-style, est une propriété raccourcie qui permet de définir le style des lignes utilisées pour les bordures
des quatre côtés de la boîte d'un élément.
- border-color. Permet de définir la couleur des bordures
• Pour gérer les débordements de contenu sur une boîte, la propriété CSS overflow. Cette propriété
permet de masquer le contenu qui déborde. Vous pouvez alors choisir d’ajouter ou non des barres de
défilement afin de pouvoir consulter le contenu masqué.
1. Position
2. Z-index
3. Float
Le positionnement
Le positionnement permet de modifier le cours classique de la mise
en page pour produire des effets intéressants. Le positionnement
permet de sortir les éléments du flux normal de la composition du
document.
Le positionnement
Seul un élément positionné interprète les feuilles de styles de
position left, top, right et bottom.
static
Par défaut, les éléments html ont une position static qui n'est pas
considéré comme un élément positionné, left, top, right et bottom
sont ignorés.
Relative
• L’élément est considéré comme positionné,
• le positionnement se fera par rapport à l'endroit où il est positionné
dans le flux (où l'élément a été déclaré dans le code HTML).
Parent
top
1 Relative 3
4 5 6
Absolute
premier parent trouvé qui n'est pas static. #Parent non positionné
Absolute
CSS
top
#parent{position :static;}
left
#enfant{position :absolute; top:10px; left:10px}
#Enfant
Absolute
Absolute
top #Parent non positionné
➢ Width et height non déclarées
left right
#Enfant Absolute
CSS - Les dimensions de l’élément dépend des
#parent{position :relative;} propriétés top, right, bottom et left si ils
#enfant{position :absolute; top:10px; left:10px; sont déclarées
right:10px}
- Si non l’élément pend la largeur et la
hauteur de son contenu
Fixed
l'élément servant de contexte de positionnement est la zone de contenu
visible de la fenêtre du navigateur (body).
Fixed a le même comportement que celui de Absolute a la différence que
l'élément reste visuellement au même endroit quand on utilise les scrollbarre.
L'élément repositionné sort du flux normal.
top CSS
left left #parent{position :relative;}
#Enfant Absolute
#enfant{position :fixed; top:10px; right:10px; bottom:10px; left:10px}
bottom
Sticky
z-index
• Les éléments HTML vont pouvoir être positionné dans
une page en CSS selon 3 dimensions : Z-index=1
• selon la largeur (axe horizontal ou axe des X en math), Z-index=3
• la hauteur (axe vertical ou axe des Y) Z-index=4
Z-index 5
• et également selon une épaisseur ou un ordre d’empilement
(axe des Z).
• La propriété z-index va permettre de choisir quel élément doit apparaitre
au-dessus de quel ordre en donnant un index sous forme de nombre à un
ou plusieurs éléments.
• Ainsi, lorsque deux éléments se chevauchent, celui possédant la plus grande
valeur pour son z-index apparaitra au-dessus de l’autre.
• Notez que la propriété CSS z-index ne va fonctionner (et n’a de sens)
qu’avec des éléments HTML positionnés
Tronc commun Ingénieur en Informatique USTO-MB Bureautique et Web
CSS Positionnement en CSS
Conteneur
Conteneur
Clear=both/left/right