Maison > interface Web > tutoriel CSS > Pourquoi le pourcentage de hauteur ne fonctionne-t-il pas comme prévu en CSS ?

Pourquoi le pourcentage de hauteur ne fonctionne-t-il pas comme prévu en CSS ?

Susan Sarandon
Libérer: 2024-12-20 04:07:09
original
344 Les gens l'ont consulté

Why Doesn't Percentage Height Work as Expected in CSS?

Pourquoi la hauteur en pourcentage ne fonctionne-t-elle pas en CSS ?

Comprendre le comportement inhérent des éléments de bloc en CSS est crucial lorsque l'on travaille avec un pourcentage. dimensions basées. Alors que les largeurs en pourcentage fonctionnent comme prévu, les hauteurs en pourcentage présentent un comportement paradoxal qui peut laisser les développeurs perplexes.

Détermination de la hauteur par défaut

Par défaut, la hauteur d'un élément de bloc est déterminé par son contenu. En d’autres termes, l’élément s’étendra verticalement pour s’adapter à la hauteur requise par son contenu. Ceci est différent de la propriété width, qui étend intrinsèquement l'élément horizontalement pour remplir l'espace disponible au sein de son parent.

Le paradoxe du pourcentage

Lorsqu'un pourcentage est utilisé pour définir la hauteur d'un élément, cela signifie un pourcentage de la hauteur de l'élément parent. Cependant, comme la hauteur de l'élément parent dépend souvent de la hauteur de ses éléments enfants, une boucle de rétroaction est créée. Définir la hauteur de l'élément enfant sur un pourcentage ne fournit pas de valeur concrète avec laquelle travailler, car cela dépend de la taille du parent, qui à son tour dépend de la taille de l'enfant. Ce cycle empêche l'établissement d'une dimension bien définie.

Hauteurs basées sur le contenu

Contrairement aux largeurs, qui sont indépendantes du contenu, les hauteurs sont directement influencées par le contenu que contient un élément. Cette dépendance rend essentiel la fourniture d'une valeur de hauteur spécifique pour l'élément parent, rompant ainsi la boucle de rétroaction et fournissant un point de référence concret pour le pourcentage de hauteur de l'élément enfant.

Exemple à illustrer

Considérez le code suivant :

<div>
Copier après la connexion
#inner {
  height: 50%;
}
Copier après la connexion

Dans cet exemple, la hauteur de #inner dépendra de la hauteur de #outer. Cependant, la hauteur de #outer dépend également de la hauteur de #inner. Sans spécifier de hauteur pour #outer, la boucle de rétroaction empêchera #inner d'avoir une hauteur bien définie.

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