Warum hat diese inline-block-element einen Inhalt besitzen, der nicht vertikal ausgerichtet
Kam in einem komischen CSS Problem. Kann mir jemand erklären, warum die box mit Inhalt ist nicht vertikal ausgerichtet?
Wenn Sie text in den span mit der Klasse .divPutTextToFixIssue
- es richtet richtig.
<div id="divBottomHeader">
<div class="divAccountPicker">
<span class="divPutTextToFixIssue"><span>
</div>
<div class="divAccountData">
<span>Balance: $555</span>
</div>
</div>
#divBottomHeader {
background-color: #d5dbe0;
height: 43px;
}
.divAccountPicker {
display: inline-block;
background: blue;
width: 200px;
height: 40px;
}
.divAccountData {
display: inline-block;
background: red;
width: 400px;
height: 40px;
}
InformationsquelleAutor Anton Skovorodko | 2012-10-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Standard -
vertical-align
Wert istbaseline
dieHinweis: Sie können diesen Standardwert in Aktion hinzufügen
vertical-align:baseline
zu Ihrem.divAccountData
- Selektor. Dabaseline
ist die Standard-Ausrichtung ist unverändert.Müssen Sie ändern, um es zu
top
zum ausrichten der Blöcke an der Spitze, zum Beispiel:Baseline ist definiert als
Adresse warum hinzufügen von text scheint das problem zu beheben, es ist, weil
vom CSS2 Visual formatting model details
So, indem nur ein einziges Zeichen ändert die Grundlinie, wodurch der zweite block erscheinen auf der gleichen vertikalen Ausrichtung. Diese nur funktioniert, wenn beide Blöcke enthalten die gleiche Anzahl von Zeilen. Versuchen Sie, mehr Wörter zu einem Ihrer Blöcke und Sie werden sehen, dass ohne dass
vertical-align:top
auf dem zweiten block wird es verschieben, je nachdem, wie viele Zeilen text bestehen, in den ersten block.Edit: Gefunden, stellt sich die Frage, Warum ist das inline-block-element nach unten geschoben?
InformationsquelleAutor andyb
Müssen Sie
vertical-align: top;
zu.divAccountPicker
demoInformationsquelleAutor xception
...............................
Hi fügen Sie nun
vertical-align:top
in Ihrem.divAccountData, .divAccountPicker
Klassewie diese
LIve-demo
wenn Sie
display:inline-block;
als all-waysvertical-align:top
InformationsquelleAutor Rohit Azad
versuchen, diese
jsFiddle
InformationsquelleAutor Afshin