Trotz sorgfältiger Definition eines oberen Rands für ein Div kann es zu einem Szenario kommen, in dem der Rand ignoriert wird, wenn Das vorhergehende Div ist schwebend. Dieses Verhalten ergibt sich aus der CSS-Spezifikation, die besagt, dass schwebende Elemente außerhalb des normalen Flusses betrachtet werden. Folglich verhalten sich nicht positionierte Blockelemente, die vor oder nach einem schwebenden Element erstellt wurden, so, als ob das schwebende Element nicht vorhanden wäre.
Bedenken Sie den folgenden HTML-Code:
<div>
In diesem Beispiel hat das zweite Div einen oberen Rand von 90 Pixel. In Firefox und IE8 scheint das zweite Div jedoch das erste Div zu berühren, ohne dass der obere Rand erkennbar ist.
Um dieses Problem zu beheben, gibt es eine einfache und effektive Lösung Die Lösung besteht darin, das zweite Div in ein anderes Div einzuschließen:
<div>
In diesem überarbeiteten Code definiert die padding-top-Eigenschaft des Wrapper-Div den Raum zwischen dem Wrapper und seinem Inhalt. Wichtig ist, dass diese Auffüllung intern angewendet wird, was bedeutet, dass sie keine externen Elemente wie das schwebende Div beeinflusst. Dadurch ist das zweite Div nun ordnungsgemäß vom schwebenden Div getrennt, obwohl das schwebende Div den normalen Fluss stört.
Der CSS-Fluss und die Auswirkungen von schwebenden Elementen sind verstanden entscheidend für die Layoutgestaltung. Indem Sie diese Konzepte verstehen und die entsprechenden Lösungen anwenden, wie z. B. das Umschließen von Elementen mit interner Polsterung, können Sie sicherstellen, dass Ihre Webseiten wie beabsichtigt angezeigt werden, auch wenn schwebende Elemente vorhanden sind.
Das obige ist der detaillierte Inhalt vonWarum wird mein oberer Rand nach einem schwebenden Element in CSS ignoriert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!