我有以下問題:我正在一個wrapper-div(.wrapper)內創建一個內嵌塊元素(.content)。如果.content-div中有內容,則一切正常。但是,如果我從.content-div中刪除內容,則會在inline-block-div下添加一個空格。如何刪除空行內塊空格下的空間(爲什麼它有嗎?)
我不知道爲什麼發生這種情況,以及如何正確解決它。請注意,在手動刪除我的代碼中的所有空格和換行符後,問題仍然存在,但將font-size設置爲0會有所幫助。
另外,將vertical-align:top設置爲.content-div會有所幫助。我不確定爲什麼。
最好的修復方法是什麼?爲什麼會發生?
小提琴:https://jsfiddle.net/cjqvcvL3/1/
<p>Works fine:</p>
<div class="wrapper">
<div class="content">not empty</div>
</div>
<p>Not so much:</p>
<div class="wrapper">
<div class="content"></div>
</div>
.wrapper {
background-color: red;
margin-bottom: 20px;
/* font-size: 0; *//* this would fix it, but why? (problem persists after manually removing all spaces and breaks) */
}
.content {
display: inline-block;
height: 20px;
width: 200px;
background-color: green;
/* vertical-align: top; *//* this would fix it, but why? */
}
更新
我已經把一個新的小提琴。這應該更好地說明我的問題。我如何擺脫textarea下面的綠線?
https://jsfiddle.net/cjqvcvL3/7/
<div class="content"><textarea>Some Content</textarea></div>
.content {
display: inline-block;
background-color: green;
}
這裏有一個解釋:http://stackoverflow.com/a/20107103/4334348 – silviagreen