我有following simple setup:爲什麼一個內嵌塊如果沒有內容就對齊到頂部?
HTML
<input type=text>
<a></a>
<a>text</a>
<span></span>
<span>text</span>
CSS
input {
width: 50px;
height: 25px;
}
span, a {
display:inline-block;
width: 50px;
height: 25px;
background: green;
color: white;
}
span {
background: blue;
}
你可以看到,第一錨元件和第一span元素被放置在頂部,而第二錨和跨度對齊在與輸入相同的基線上。爲什麼這樣?
@BoltClock,非常感謝!非常清楚和準確的解釋。有什麼方法可以改變這種邏輯 - _baseline是它的底部邊緣edge_ - 通過應用一些CSS規則?或者基本上只有兩個選項:添加內容或調整兄弟姐妹的基線? – 2014-12-04 12:29:42
@Maximus:想到的一個奇怪的解決方法是使用':before'添加非打印字符,如零寬度空格。儘管如此,請參閱http://jsfiddle.net/BoltClock/kauto3n3/4需要測試。 – BoltClock 2014-12-04 12:32:05
@BoltClock,明白了,非常感謝!最好! – 2014-12-04 12:52:21