Maison > interface Web > tutoriel CSS > Pourquoi les marges Flexbox se comportent-elles différemment que dans un contexte de formatage de bloc standard ?

Pourquoi les marges Flexbox se comportent-elles différemment que dans un contexte de formatage de bloc standard ?

Mary-Kate Olsen
Libérer: 2024-11-27 11:48:14
original
192 Les gens l'ont consulté

Why Do Flexbox Margins Behave Differently Than in a Standard Block Formatting Context?

Réduction des marges dans Flexbox

Généralement, en CSS, lorsqu'un parent et son dernier enfant ont une marge, les marges s'effondrent en une seule marge. Cependant, dans Flexbox, les marges se comportent différemment.

Pourquoi l'effondrement des marges est différent dans Flexbox

L'effondrement des marges est une fonctionnalité d'un contexte de formatage de bloc, qui n'est pas utilisé dans un contexte de formatage flexible. Flexbox établit un nouveau contexte de formatage flexible pour son contenu, ce qui signifie que les marges ne s'effondrent pas de la même manière que dans un contexte de formatage de bloc.

Comment faire en sorte que les marges de Flexbox se comportent comme celles qui ne sont pas Flexbox

Étant donné que la réduction des marges est une fonctionnalité d'un contexte de formatage de bloc, il n'est pas possible de faire en sorte que les marges flexbox se comportent exactement comme ceux non-flexbox. Cependant, il est possible d'obtenir un effet similaire en définissant la propriété display du conteneur flexbox sur inline-flex au lieu de flex. Cela créera un contexte de formatage flexbox, mais il sera traité comme un élément en ligne, et donc les marges s'effondreront comme prévu.

Par exemple :

#container {
  display: inline-flex;
  flex-direction: column;
}

article {
  margin-bottom: 20px;
}

main {
  background: pink;
  margin-bottom: 20px;
}

footer {
  background: skyblue;
}
Copier après la connexion

Dans ce cas, le les marges s'effondreront entre le dernier article et le pied de page, ce qui donnera une marge de 20 px, tout comme dans une mise en page non-flexbox.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal