DEUXIÈME PARTIE
102
Un peu de bugware (réaction de compromis face à une erreur d’un tiers) est préférable à des techniques de contournement plus complexes. On écrira donc :
Cela produit l’effet escompté au prix de devoir spécifier une marge pour chaque élément contenu dans le bloc. On pourrait pour cela exploiter un (autre) bogue
d’Internet Explorer et recourir au pseudo-élément :first-child. Non reconnu par
IE6 (mais implémenté sur IE7), ce pseudo-élément désignera dans les autres navigateurs tous les enfants directs de l’élément
Éléments ancêtres, parents, enfants et frères
Chaque boîte peut en contenir d’autres. Un paragraphe
peut ainsi renfermer des en est le parent.
boîtes définies par les éléments ou , et se trouver lui-même inclus
dans un élément
Toutes ces imbrications de boîtes forment une hiérarchie arborescente entièrement
comprise dans la boîte de l’élément racine du document (). Il est essentiel de
comprendre cette arborescence pour bien utiliser les positionnements.
Tout document HTML est composé de conteneurs (boîtes en renfermant d’autres),
sur lesquels la hiérarchie du document induit une généalogie.
• Un élément directement contenu dans un autre est considéré comme son
« enfant » (le contenant s’appelle le « parent »). Les éléments de liste
ainsi enfants d’un élément ou
; un
paragraphe
• Les termes familiaux habituels s’en déduisent : un bloc
tout élément en ligne ( ou ) compris dans ses paragraphes enfants.
Un parent est un ancêtre de premier niveau. L’ensemble de la lignée ascendante
d’un élément, qui aboutit à la racine du document, constitue aussi celui de ses
ancêtres.
• Les éléments partageant le même parent sont logiquement appelés « frères ».
CSS
div {
width: 150px;
}
div p {
margin-right: 20px;
}
