Maison >interface Web >tutoriel CSS >Comment étirer un enfant flexible pour remplir la hauteur du parent sans régler la hauteur du parent ?

Comment étirer un enfant flexible pour remplir la hauteur du parent sans régler la hauteur du parent ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-30 15:22:02293parcourir

How to Stretch a Flex Child to Fill the Parent's Height Without Setting Parent Height?

Étirer un enfant flexible pour remplir la hauteur du conteneur sans régler la hauteur du parent

Lorsque vous essayez d'étirer un enfant flexible jaune pour remplir toute la hauteur de son conteneur parent, il est crucial d'éviter de définir la hauteur du parent. Au lieu de cela, la taille du parent doit s'ajuster dynamiquement en fonction du contenu de l'enfant bleu.

Un piège courant lorsque l'on travaille avec Flexbox est l'utilisation excessive de la hauteur : 100 %. Bien que cela soit souvent nécessaire dans d'autres contextes, cela peut perturber la disposition de la Flexbox.

Raison 1 : Dépendance de la taille du parent

Lors de l'utilisation de la hauteur : 100 %, le parent du L'élément étiré nécessite également une hauteur définie, ce que Flexbox n'a pas besoin dans la plupart des cas. Cela peut conduire à un comportement inattendu.

Raison 2 : Négligence des éléments des frères et sœurs

Si l'enfant flexible a des frères et sœurs au-dessus ou en dessous, en utilisant la hauteur : 100 % négligera leur présence, provoquant potentiellement des problèmes de mise en page.

Solution : Supprimer la hauteur : 100 %

La solution est simple : Supprimer la hauteur : 100 % de l'enfant flexible jaune. Cela permet au comportement par défaut de Flexbox de prendre le relais.

Comportement de Flexbox par défaut

Pour les éléments flexibles disposés dans une rangée horizontale (valeur par défaut), align-items contrôle leur alignement vertical. Par défaut, celui-ci est défini sur étirement, qui remplit automatiquement la hauteur du conteneur.

Échantillon de code

<code class="html"><div style='display: flex'>
  <div style='background-color: yellow; width: 20px'></div>
  <div style='background-color: blue'>
    some<br>
    cool<br>
    text
  </div>
</div></code>

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!

Déclaration:
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