我有一個非常簡單的HTML頁面(驗證爲XHTML 1.0 Strict標準):爲什麼IE7在清除浮動時會導致保證金錯誤?
<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上?
利用css重置ala Eric Meyer:http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/將有助於最大限度地減少您可能遇到的一些瀏覽器差異。 – Traingamer 2009-01-07 19:22:38
我們已經重置了,忘了提及...謝謝! – 2009-01-08 15:12:39