Heim  >  Artikel  >  Web-Frontend  >  Warum kollabiert ein übergeordnetes Div auf die Höhe Null, wenn seine untergeordneten Elemente schwebend sind?

Warum kollabiert ein übergeordnetes Div auf die Höhe Null, wenn seine untergeordneten Elemente schwebend sind?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-09 10:10:02354Durchsuche

Why Does a Parent Div Collapses to Zero Height When Its Children Are Floated?

Grundlegende Informationen zur Höhe des übergeordneten Divs von Null mit schwebenden untergeordneten Elementen

Wenn ein Div in CSS schwebende untergeordnete Elemente enthält, kann dies manchmal dazu führen, dass das übergeordnete Div angezeigt wird eine Höhe von Null haben. Dieses Phänomen mag verwirrend erscheinen, wenn man bedenkt, dass der Inhalt auf der Seite korrekt dargestellt wird.

Die Erklärung liegt im CSS-Layoutmodell. Schwebte Inhalte, wie die Divs „.content“ und „.lbar“ im bereitgestellten HTML-Beispiel, werden aus dem normalen Fluss des Dokuments entfernt und neben dem darauf folgenden Inhalt platziert. Dies bedeutet, dass der schwebende Inhalt keinen Einfluss mehr auf die Höhe seines Container-Divs hat.

Da kein nicht schwebender Inhalt vorhanden ist, enthält das übergeordnete Div („#wrapper“) keine Elemente, die zu seiner Höhe beitragen. Folglich wird es auf eine Höhe von 0 Pixel reduziert, obwohl seine untergeordneten Elemente auf der Seite angezeigt werden.

Um dieses Problem zu beheben und sicherzustellen, dass das übergeordnete Div sichtbar bleibt, können Entwickler Techniken wie die folgenden anwenden:

  • Ausblenden von Überläufen: Durch das Festlegen von „Überlauf: ausgeblendet“ für das übergeordnete Div wird ein neuer Blockformatierungskontext erstellt, der das Div dazu zwingt, seine schwebenden untergeordneten Elemente zu enthalten und eine Höhe ungleich Null beizubehalten.
  • Nicht schwebender Inhalt: Durch das Hinzufügen von nicht schwebendem Inhalt, wie z. B. einem Textknoten oder einem klaren Element, innerhalb des übergeordneten Divs kann das Div eine Höhe basierend auf diesem Inhalt festlegen.

Das Verständnis dieses Verhaltens verhindert Frustrationen und ermöglicht es Entwicklern, gewünschte Layouts ohne unerwartete Höhenprobleme effektiv zu erstellen.

Das obige ist der detaillierte Inhalt vonWarum kollabiert ein übergeordnetes Div auf die Höhe Null, wenn seine untergeordneten Elemente schwebend sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn