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

Comment étirer un enfant flexible pour remplir la hauteur du conteneur dans Flexbox sans définir de hauteur fixe ?

Susan Sarandon
Libérer: 2024-10-28 20:29:30
original
657 Les gens l'ont consulté

How to Stretch a Flexible Child to Fill Container Height in Flexbox Without Setting a Fixed Height?

Étirer un enfant flexible pour remplir la hauteur du conteneur

Lorsque vous travaillez avec Flexbox, il est crucial de comprendre l'impact de la définition des propriétés de hauteur. Contrairement aux dispositions traditionnelles, Flexbox gère la hauteur différemment.

Problème :

Dans l'exemple fourni, l'objectif est d'étirer le div enfant jaune pour remplir toute la hauteur du parent. conteneur, sans définir de hauteur fixe pour le parent. La taille du parent doit s'adapter en fonction du contenu du texte du div enfant bleu.

Erreur :

En général, on peut tenter de définir la hauteur : 100 % sur le jaune enfant pour obtenir cet effet. Cependant, dans Flexbox, cette approche échoue souvent.

Explication :

Lors de l'utilisation de height : 100 % dans Flexbox, l'élément parent (ou un frère dans le cas de direction des lignes) nécessite une hauteur définie, ce qui n'est pas toujours souhaité ou possible, notamment lorsqu'on s'appuie sur du contenu dynamique. De plus, hauteur : 100 % sur plusieurs enfants dans le même conteneur peut conduire à des résultats inattendus.

Solution :

La solution est étonnamment simple : supprimer la hauteur : 100 % de l'enfant jaune. Par défaut, les éléments flexibles dans le sens d'une ligne sont étirés verticalement selon la propriété align-items. Puisque sa valeur par défaut est stretch, l'enfant jaune remplira automatiquement la hauteur du conteneur.

Extrait 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>
Copier après la connexion

En supprimant la hauteur : 100 %, l'enfant jaune s'étire désormais pour correspondre à la hauteur de l'enfant bleu et du conteneur parent, sans affecter la hauteur dynamique du parent. Cette solution exploite la mécanique inhérente de Flexbox pour obtenir le résultat souhaité.

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
À 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!