Heim >Web-Frontend >CSS-Tutorial >Negative Ränder in CSS: Warum ist margin-top:-5 nicht dasselbe wie margin-bottom:5?
Eintauchen in negative Margen: Verhalten, Intuition und Unterschiede
CSS lässt negative Margen zu, aber ihre Auswirkungen können verwirrend sein. Um dieses Thema zu entmystifizieren, untersuchen wir ihr Verhalten und verstehen, warum margin-top:-5 nicht gleichbedeutend mit margin-bottom:5 ist.
Negative Ränder verstehen
Negativ Ränder werden außerhalb des Randes angebracht und sind im visuellen Rand unsichtbar. Dies liegt daran, dass sie sich auf das Randfeld auswirken, während die Inhalts- und Füllfelder unberührt bleiben. Bei absolut positionierten Elementen verschieben negative Ränder das Element um den angegebenen Betrag, ohne das Layout zu beeinflussen.
Grafische Darstellung
Stellen Sie sich ein Element mit einem negativen oberen Rand vor:
[Bild eines Rechtecks mit negativem oberen Rand]
Das Randfeld verkleinert sich um den negativen Betrag, aber der Inhalt und Füllrahmen bleiben davon unberührt.
Intuition hinter negativen Rändern
Negative Ränder „heben“ ein Element an, weil sie die Größe des Randrahmens verringern. Für margin-top < 0, dadurch wird das Element nach oben verschoben.
Unterschied zwischen oberem und unterem Rand
margin-top:-8px ist nicht dasselbe wie margin-bottom:8px weil die Marge zusammenbricht. Wenn ein Element auf gegenüberliegenden Seiten sowohl negative als auch positive Ränder aufweist, werden die Ränder reduziert und der negative Rand eliminiert. Infolgedessen findet keine Nettobewegung statt.
Bonustipp für die vertikale Zentrierung
Bei Verwendung von % für seitliche Ränder (d. h. oben oder unten) wird der Wert berechnet als Prozentsatz der Breite des enthaltenden Blocks. Dies kann zu Problemen bei der vertikalen Zentrierung führen. Es ist besser, margin-top:-50vh für die vertikale Zentrierung zu verwenden, wobei vh die Einheit für die Höhe des Ansichtsfensters angibt.
Das obige ist der detaillierte Inhalt vonNegative Ränder in CSS: Warum ist margin-top:-5 nicht dasselbe wie margin-bottom:5?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!