Wie kann ich erreichen, dass das "x" in der Mitte der Spanne vertikal ausgerichtet wird?
.foo {
height: 50px;
border: solid black 1px;
display: inline-block;
vertical-align: middle;
}
<span class="foo">
x
</span>
Verwenden Sie line-height:50px;
anstelle der Höhe. Das sollte den Trick machen;)
Beachten Sie, dass der
line-height
Ansatz fehlschlägt, wenn Sie einen langen Satz inspan
der Zeile haben, der die Linie durchbricht, weil nicht genügend Platz vorhanden ist. In diesem Fall hätten Sie zwei Zeilen mit einer Lücke mit der Höhe der in der Eigenschaft angegebenen N Pixel.Ich habe mich daran gehalten, als ich ein Bild mit vertikal zentriertem Text auf der rechten Seite anzeigen wollte, das in einer reaktionsschnellen Webanwendung funktioniert. Als Basis verwende ich den von Eric Nickus und Felipe Tadeo vorgeschlagenen Ansatz.
Wenn Sie erreichen wollen:
und das:
quelle
Dies ist der einfachste Weg, wenn Sie mehrere Zeilen benötigen. Wickeln Sie Ihren
span
Text in einen anderen einspan
und geben Sie dessen Höhe mit anline-height
. Der Trick , um mehrere Zeilen wird das Zurücksetzen der innerenspan
‚sline-height
.DEMO
Natürlich
span
könnte das Äußere eindiv
oder was auch immer seinquelle
span
s kann wie jedes andere Inline-Element jedes HTML-Inline-Element enthalten . Unabhängig davon habe ich geschrieben, dasstextvalignmiddle
dies eine sein kann,div
wenn dies erforderlich ist (und Sie können es einstellen,display:inline;
wenn Sie so abgeneigt sind, es zu verwendenspans
)span
ist der generische Inline-Container für HTML und weist nicht einmal darauf hin, nur Text zu sein. `Es kann verwendet werden, um Elemente für Stylingzwecke zu gruppieren ...`. Ich schlage vor, die Spezifikation zu lesen, bevor Sie Ihre persönlichen Codierungsstandards auf andere übertragen, die sie als TatsacheDer Flexbox-Weg:
quelle
.foo
ist eine spannedisplay: flex-inline
würde besser passenIch brauchte dies für Links, also habe ich den Bereich mit einem a-Tag und einem div umbrochen und dann den Bereich selbst zentriert
HTML
CSS
quelle
CSS vertikales zentrales Bild und Text
Ich habe eine Demo für vertikale Bildmitte und Text erstellt und ich habe auch Test auf Firefox, Chrome, Safari, Internet Explorer 9 und 8.
Es ist sehr kurz und einfach CSS und HTML. Bitte überprüfen Sie den folgenden Code und Sie können die Ausgabe auf Screenshort finden.
HTML
CSS
Ausgabe Geben Sie hier die Bildbeschreibung ein
quelle
das funktioniert bei mir (Keltex sagte dasselbe)
quelle
Das vertikal ausgerichtete CSS-Attribut macht leider nicht das, was Sie erwarten. In diesem Artikel werden zwei Möglichkeiten zum vertikalen Ausrichten eines Elements mithilfe von CSS erläutert.
quelle
Stellen Sie padding-top als geeigneten Wert ein, um das x nach unten zu drücken, und subtrahieren Sie dann den Wert, den Sie für padding-top haben, von der Höhe.
quelle