IE7、IE8、Firefox中實現(xiàn)DIV自動適應(yīng)高度
你對DIV+CSS在IE7、IE8、Firefox中實現(xiàn)DIV自動適應(yīng)高度的方法是否了解,這里和大家分享一下,相信本文介紹一定會讓你有所收獲。
DIV+CSS在IE7、IE8、Firefox中實現(xiàn)DIV自動適應(yīng)高度
IE7 、Firefox下設(shè)置
標(biāo)準(zhǔn)瀏覽器中固定高度值的容器是不會象IE6里那樣被撐開的,那我又想固定高度,又想能被撐開需要怎樣設(shè)置呢?辦法就是去掉height設(shè)置min-height:200px;這里為了照顧不認(rèn)識min-height的IE6可以這樣定義:
- {
- height:auto!important;
- height:200px;
- min-height:200px;
- }
IE8下設(shè)置
◆額外標(biāo)簽法
這種方法就是向父容器的末尾再插入一個額外的標(biāo)簽,并令其清除浮動(clear)以撐大父容器。這種方法瀏覽器兼容性好,沒有什么問題,缺點(diǎn)就是需要額外的(而且通常是無語義的)標(biāo)簽。我個人不喜歡這種方法,但是它確實是W3C推薦的方法:
- 1<DIVstyleDIVstyle="clear:both;"></DIV>
或者使用
- 1<brstylebrstyle="clear:both;"/>
◆使用after偽類
這種方法就是對父容器使用after偽類和內(nèi)容聲明在指定的現(xiàn)在內(nèi)容末尾添加新的內(nèi)容。經(jīng)常的做法就是添加一個“點(diǎn)”,因為它比較小不太引人注意。然后我們再利用它來清除浮動(閉合浮動元素),并隱藏這個內(nèi)容。
這種方法兼容性一般,但經(jīng)過各種hack也可以應(yīng)付不同瀏覽器了,同時又可以保證html比較干凈,所以用得還是比較多的。
- 1#outer:after{
- 2content:".";
- 3height:0;
- 4visibility:hidden;
- 5display:block;
- 6clear:both;
- 7}
設(shè)置overflow為hidden或者auto{IE8常見內(nèi)部浮動外部高度不適應(yīng)解決方法}
這種做法就是將父容器的overflow設(shè)為hidden或auot就可以在標(biāo)準(zhǔn)兼容瀏覽器中閉合浮動元素。不過使用overflow的時候,可能會對頁面表現(xiàn)帶來影響,而且這種影響是不確定的,你***是能在多個瀏覽器上測試你的頁面。
◆浮動外部元素,float-in-float
這種做法就是讓父容器也浮動,這利用到了浮動元素的一個特性——浮動元素會閉合浮動元素。這種方式在IE/Win和標(biāo)準(zhǔn)兼容瀏覽器中都有較好的效果,但缺點(diǎn)也很明顯——父容器未必想浮動就浮動的了,畢竟浮動是一種比較特殊的行為,有時布局不允許其浮動也很正常。
【編輯推薦】
- 熱點(diǎn)透視 DIV CSS***兼容IE6 IE7 FF的通用方法
- 探究IE8與IE7具體功能中窗口功能按鈕的變化
- IE6 IE7 IE8三個版本的CSS兼容速查手冊
- 探秘IE8 JavaScript功能超乎想象
- 技術(shù)前沿 一段JS代碼輕松解決IE6-IE8的兼容性問題