Maison > Article > interface Web > Pourquoi ma marge supérieure s'effondre-t-elle lorsqu'un élément flottant est au-dessus ?
Pourquoi la marge supérieure est ignorée lorsqu'un élément flottant est présent
On observe souvent que la marge supérieure d'un élément HTML est ignorée s'il y a un élément flottant qui le précède. Ce comportement découle de la spécification CSS, qui indique que "les boîtes de blocs non positionnées créées avant et après la boîte flottante s'écoulent verticalement comme si le flottant n'existait pas."
Dans de telles situations, l'élément flottant n'existe pas. Cela ne contribue pas au calcul de la marge supérieure. En conséquence, les éléments suivants semblent buter sur l'élément flottant sans aucun espacement.
Pour résoudre ce problème, une approche simple consiste à introduire un élément wrapper autour de l'élément suivant. Ce wrapper agira comme un tampon, séparant l'élément flottant du contenu encapsulé.
Essentiellement, l'espacement du wrapper doit être spécifié sous forme de remplissage interne plutôt que de marge. Cela garantit que les facteurs externes, tels que d'autres éléments flottants, n'interfèrent pas avec l'espacement entre le wrapper et l'élément flottant.
À titre d'illustration, considérons l'extrait HTML modifié suivant :
<div>
En utilisant cette approche, vous pouvez vous assurer que l'élément suivant respecte la marge supérieure spécifiée, même en présence d'un élément flottant.
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!