![Why Doesn't Margin-Top Work on Inline Elements but Does on Inline-Block Elements?](https://img.php.cn/upload/article/000/000/000/173559205185011.jpg)
Inline vs. Inline-Block: Warum Margin-Top nur mit Inline-Block funktioniert
Die Frage
Bei der Verwendung von HTML und CSS a Der Benutzer versucht, einen oberen Rand für ein
zu erstellen. Element, aber es erscheint nur, wenn die CSS-Eigenschaft display auf inline-block gesetzt ist, nicht, wenn sie auf inline gesetzt ist.
Erklärung
Die CSS-Spezifikation definiert den Unterschied zwischen inline und inline-block wie folgt:
-
inline-block: Erstellt einen Blockcontainer auf Inline-Ebene, in dem die Der interne Inhalt des Elements wird als Blockbox formatiert, und das Element selbst wird als Inline-Level-Box formatiert.
-
inline: Erzeugt eine oder mehrere Inline-Boxen.
Entscheidend ist, dass die CSS2-Spezifikation besagt, dass Inline-Elemente nur horizontale Ränder berücksichtigen (z. B. margin-left).
Der Unterschied
Der Unterschied liegt darin, wie Inline- und Inline-Block-Elemente behandelt werden:
- Während inline Elemente gelten als echte Inline-Elemente, Inline-Block-Elemente werden als Blöcke behandelt, sind aber optisch inline miteinander.
- Blockebene Elemente (wie Inline-Block) respektieren sowohl horizontale als auch vertikale Ränder, während Inline-Elemente nur horizontale Ränder respektieren.
Auflösung
Deshalb wird im bereitgestellten Fall die Anzeige auf „Inline“ gesetzt das
Das Element wendet nur horizontale Ränder an, was „margin-top“ nicht einschließt. Wenn Sie die Anzeige jedoch auf „inline-block“ setzen, können sowohl horizontale als auch vertikale Ränder angewendet werden, einschließlich „Margin-Top“.
Das obige ist der detaillierte Inhalt vonWarum funktioniert Margin-Top nicht bei Inline-Elementen, aber bei Inline-Block-Elementen?. 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