À propos du gabarit 03
Code HTML et CSS
Ce gabarit est structuré de la manière suivante:
<div id="global">
<header id="entete">...</header>
<nav id="navigation">...</nav>
<main id="contenu">...</main>
<footer id="pied">...</footer>
</div>
Il est mis en forme par deux feuilles de styles:
- base.css (mise en forme minimale du texte, commune à tous les gabarits)
- modele03.css, qui contient tous les styles propres à ce gabarit, et que nous vous invitons à consulter.
Pour voir le détail du code HTML de cette page, utilisez la fonction d'affichage de la source de votre navigateur web (ex: «Affichage > Code source de la page»).
À noter
-
Le conteneur global (
div#global
) a une largeur fixe de 750px. Il est centré grâce aux marges automatiques (margin-left: auto
etmargin-right: auto
). -
Le conteneur global prend au minimum toute la hauteur de la fenêtre grâce à la propriété
min-height
, avec la valeur100%
.La petite subtilité ici est que pour que le
min-height: 100%
soit pris en compte, l'élément parent (body
) doit lui-même avoir une hauteur déterminée. Et cela vaut également pour le parent debody
, c'est à dire l'élémenthtml
(appelé aussi élément racine du document). On écrit donc:html, body { height: 100%; } #global { min-height: 100%; }
-
Attention: il ne faut pas donner de marge, padding ou bordure verticales aux éléments
html
,body
etdiv#global
. En effet, ils se rajouteraient à la hauteur de l'élément, or le moindre pixel en plus des 100% de hauteur provoquerait l'apparition d'une barre de défilement, même s'il n'y a aucun contenu à faire défiler.Pour la même raison, il faut éviter la fusion des marges entre
div#global
et ses éléments enfants. Dans ce gabarit, on utiliseoverflow: hidden
surdiv#global
dans ce but.