Maison > interface Web > tutoriel CSS > Pourquoi mon élément enfant n'hérite-t-il pas de la hauteur lorsque le parent n'a qu'une « hauteur minimale » ?

Pourquoi mon élément enfant n'hérite-t-il pas de la hauteur lorsque le parent n'a qu'une « hauteur minimale » ?

Linda Hamilton
Libérer: 2024-12-26 08:13:12
original
504 Les gens l'ont consulté

Why Doesn't My Child Element Inherit Height When the Parent Only Has `min-height`?

Hauteur de l'élément enfant non appliquée avec la hauteur min/max du parent et aucune hauteur explicite

Problème :

Considérez le CSS suivant :

.container {
  background-color: red;
  width: 500px;
  min-height: 300px;
}

.child {
  background-color: blue;
  width: 500px;
  height: 100%;
}
Copier après la connexion

Même si l'élément enfant a une hauteur définie sur 100 %, il ne prend aucune hauteur lorsque l'élément parent a une valeur min-height mais pas de hauteur explicite. Ce n'est que lorsque la hauteur de l'élément parent est définie sur 1 px que l'élément enfant remplit correctement le conteneur.

Explication :

Dans le premier cas (pas de hauteur explicite pour l'élément parent) parent), le pourcentage de taille de l'enfant échoue car :

Selon la spécification CSS :

"Si la hauteur du Le bloc contenant n'est pas spécifié explicitement (c'est-à-dire qu'il dépend de la hauteur du contenu) et cet élément n'est pas positionné de manière absolue, la valeur est calculée sur « auto ».

Min-height ne fournit qu'une limite minimale, et le la hauteur de l'élément dépend toujours de son contenu.

Pour illustrer, considérons l'exemple modifié suivant :

.container {
  background-color: red;
  width: 500px;
  min-height: 300px;
  padding: 10px;
}

.child {
  background-color: blue;
  width: 500px;
  height: 400px;
  animation: change 2s linear infinite alternate;
}

@keyframes change {
  from {
    height: 100px;
  }
}
Copier après la connexion

Ici, le conteneur définit explicitement un petit remplissage, qui force l'élément enfant à avoir une hauteur maximale inférieure à 300 px. L'animation modifie dynamiquement la taille de l'enfant, démontrant que la taille de l'enfant dépend bien de l'espace disponible et pas uniquement de son réglage en hauteur à 100 %.

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