Maison > interface Web > tutoriel CSS > le corps du texte

Pourquoi un élément flottant ne semble-t-il pas affecter la largeur des divisions ?

DDD
Libérer: 2024-10-31 07:26:02
original
801 Les gens l'ont consulté

Why Does a Floated Element Appear to Not Affect Div Width?

Comportement CSS Float : Comprendre la préservation de la largeur des divisions

Lors de l'application de la propriété float:left à un élément HTML, il est prévu que les éléments suivants être poussé vers la gauche plutôt que de passer à une nouvelle ligne. Cependant, dans certaines circonstances, il peut sembler que la largeur du div n'est pas affectée.

Dans l'exemple donné, le contenu du deuxième div (avec class="jaune") est correctement aligné, mais le div lui-même reste s'étend sur toute la largeur du conteneur. Ce comportement découle de la nature fondamentale du positionnement flottant.

Lorsqu'un élément flotte, il est supprimé du flux normal du document. Cependant, l'espace occupé par l'élément flottant est toujours "réservé" par l'élément suivant qui aurait occupé cet espace.

Cette réservation d'espace est documentée dans la spécification CSS, qui stipule que les blocs non positionnés les éléments de niveau (tels que divs) traitent les flotteurs comme s'ils n'existaient pas en termes de disposition verticale. Cependant, les zones de ligne (les zones rectangulaires qui contiennent du texte) sont raccourcies pour s'adapter à la zone de marge du flottant.

En conséquence, le contenu de l'élément suivant coule sur le côté du flottant, mais la largeur du Le conteneur (déterminé par l'élément non flottant suivant) reste réservé.

Pour résoudre ce problème, une solution consiste à appliquer une propriété de débordement (telle que overflow: Hidden) à l'élément suivant. Ce faisant, vous établissez un nouveau contexte de formatage de bloc, qui empêche l'élément de chevaucher la zone de marge de l'élément flottant. Cela force l'élément suivant à se réduire à une taille qui ne chevauche pas le flotteur.

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!