Maison > interface Web > tutoriel CSS > Pourquoi une division parent s'effondre-t-elle à une hauteur nulle lorsqu'elle contient des enfants flottants ?

Pourquoi une division parent s'effondre-t-elle à une hauteur nulle lorsqu'elle contient des enfants flottants ?

DDD
Libérer: 2024-11-09 12:37:02
original
185 Les gens l'ont consulté

Why Does a Parent Div Collapse to Zero Height When Containing Floated Children?

L'énigme du parent à hauteur nulle : enfants flottants et hauteurs de conteneurs

Dans le domaine de la conception Web, rencontrer des comportements particuliers en CSS le style peut être déroutant. Une de ces énigmes survient lorsque la hauteur d'un div parent diminue mystérieusement jusqu'à zéro malgré la présence d'éléments enfants flottants. Pour percer ce mystère, explorons le code CSS et HTML :

#wrapper {
  width: 75%;
  min-width: 800px;
}

.content {
  text-align: justify;
  float: right;
  width: 90%;
}

.lbar {
  text-align: justify;
  float: left;
  width: 10%;
}
Copier après la connexion
<div>
Copier après la connexion

Une fois ces styles appliqués, la page s'affiche correctement. Cependant, en inspectant les éléments, une observation particulière émerge : le div parent, #wrapper, présente une hauteur de 0px malgré la présence de divs enfants flottants. Ce comportement soulève la question : pourquoi la hauteur du div parent disparaît-elle ?

La réponse réside dans la nature inhérente des éléments flottants en CSS. Le contenu flottant est essentiellement supprimé du flux de documents normal, occupant une place en dehors de la mise en page normale. De ce fait, la hauteur du conteneur est déterminée uniquement par son contenu non flottant. Dans ce cas, puisque tout le contenu de #wrapper flotte, la hauteur du conteneur s'effondre à zéro.

Pour remédier à ce problème, plusieurs techniques peuvent être utilisées :

  • Débordement : Hidden: En définissant overflow: Hidden sur le div parent, un nouveau contexte de formatage de bloc est créé. Cela force efficacement les éléments enfants flottants à contribuer à la hauteur du conteneur.
  • Contenant des flotteurs : Il existe diverses méthodes pour contenir des éléments flottants, garantissant que la hauteur du conteneur parent s'étend de manière appropriée. Celles-ci incluent l'utilisation de pseudo-éléments, de boîtes flexibles CSS3 ou de dispositions de grille.

En comprenant le comportement des éléments flottants et en mettant en œuvre des techniques de confinement appropriées, les développeurs peuvent empêcher le phénomène confondant de div parent de hauteur nulle et garder le contrôle. sur leurs mises en page.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal