IE6 7下form元素預設樣式導致的bug

2021-08-30 20:52:21 字數 430 閱讀 4521

bug重現

ie6/7下以上兩個div會斷開,大概有10-20個px,截圖如下:

ie8/firefox3.6/safari4/chrome7 dev/opera10 則不會斷開

去掉form或將form換成div則不會,初以為是form在ie6/7下的莫名bug,經路神,豬大腸等指點明白了。

首先,ie6/7下form的預設樣式中margin不為0, 分別為1.12em 0,14.25pt 0。

見:

再次,form的margin會發生塌陷,跑到父元素的外了,因此兩個div之間斷裂出現空白了。

關於margin塌陷見css 8.3.1:

因此,寫css reset時莫忘了重置form元素。

感謝他們兩個。

IE6,7下的那些坑

lang en charset utf 8 title type text css warp box style head class warp class box div div body html 在ie6 ie7,ie8,chrome,firefox顯示效果 當使box元素為浮動元素時 box...

IE6 7下如何實現inline block

ie6,ie7的haslayout屬性是個讓人頭疼的問題。在做導航條的時候,一般會用到ul li結構,大多數時候我們是把li設定為浮動,讓其併排顯示在同一行。還有一種方法就是設定li為display inline 這樣可以達到同樣的效果,但是問題是inline元素的特性 預設無法設定寬度,高度,以及...

IE6 7下inline block不起作用

網上查到資料是給元素設定display inline block,再觸發layout,設定display inline 因為所有的瀏覽器都支援inlie。即 div div 原理在下面 寫在前面的話,在我開發css的過程中,我發現很多詭異的問題都是對概念理解有偏差,所以在每篇開始的時候,我都把w3c...