我有一个非常简单的 HTML 页面(验证为 XHTML 1.0 Strict):
<div class="news-result">
<h2><a href="#">Title</a></h2><span class="date">(1-1-2009)</span>
<p>Some text...</p>
</div>
使用以下 CSS:
.news-result {
overflow: hidden;
padding: 30px 0 20px;
}
.news-result h2 {
float: left;
margin: 0 10px 0 0;
}
.news-result span.date {
margin: 1px 0 0;
float : left;
}
.news-result p {
padding: 3px 0 0 0;
clear: left;
}
在 IE6 或 FF3 中呈现此页面完美呈现(标题和日期在一行,然后是段落)。然而,在 IE7 中,标题和日期以及段落之间有很大的空格。
我们有一个简单的重置,可以清除每个元素上的每个边距和填充。
将浮点数放在日期元素上可以解决这个问题,就像zoom: 1
在段落上设置或overflow: hidden
在容器上删除一样,但都不是理想的。为什么浮动后跟一个段落会触发这个额外的上边距,只在 IE7 上?