Heim > Web-Frontend > CSS-Tutorial > Warum zentriert „vertical-align: middle' Inline-Inhalte nicht immer vertikal?

Warum zentriert „vertical-align: middle' Inline-Inhalte nicht immer vertikal?

DDD
Freigeben: 2024-12-26 13:54:17
Original
917 Leute haben es durchsucht

Why Doesn't `vertical-align: middle` Always Vertically Center Inline Content?

Unerwartete Folgen von Vertical-Align: Falsch ausgerichteter Inhalt

Im Bereich des Webdesigns spielt Vertical-Align eine entscheidende Rolle bei der vertikalen Positionierung von Elementen . Es gibt jedoch Fälle, in denen die beabsichtigte Ausrichtung nicht zustande kommt, was zu einer Fehlausrichtung des Inhalts führt.

Betrachten Sie das folgende Beispiel:

p {
  background: yellow
}

span {
  display: inline-block;
  vertical-align: middle;
  height: 50px;
  background: pink;
}
Nach dem Login kopieren
<p>Hello <span>What in the</span> World?</p>
Nach dem Login kopieren

In diesem Szenario erwarten wir das Das span-Element soll innerhalb des umgebenden Absatzes vertikal ausgerichtet werden. Wenn wir jedoch „vertikal-align: middle“ auf den Bereich anwenden, kommt es zu einem unerwarteten Ergebnis: Der gesamte Absatz, mit Ausnahme des Inhalts des Bereichs, wird vertikal ausgerichtet.

Warum tritt diese Fehlausrichtung auf? Es handelt sich nicht um einen Fehler, sondern um das erwartete Verhalten von Vertical-Align. Vertical-align gibt die vertikale Ausrichtung von Elementen an. In diesem Fall wird die Spanne innerhalb des Absatzes zentriert. Das Fehlen einer Ausrichtung am Inhalt des Bereichs weist darauf hin, dass der Browser den Inhalt entsprechend seiner natürlichen Höhe wiedergibt, die geringer ist als die Höhe des Bereichs selbst.

Um die Fehlausrichtung zu beseitigen, können wir die vertikale Ausrichtung anpassen des Span-Inhalts durch Ändern seiner vertikalen Ausrichtung:

span {
  position: relative;
  vertical-align: middle;
  top: 50%;
  transform: translateY(-50%);
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWarum zentriert „vertical-align: middle' Inline-Inhalte nicht immer vertikal?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage