你對CSS布局中DIV為空時在IE6的不同表現是否了解,這裡和大家分享一下,希望本文的介紹能讓你有所收獲。
CSS布局中DIV為空時在IE6的不同表現
在實際應用中為了特殊的需要而用到一個空的DIV,並定義一個較小的高度值.通常的想法見下面代碼:
Html
- <div></div>
- CSS
- div{
- height:5px;
- }
以上代碼在多數浏覽器中都可正確顯示,但我們在實際運用中,確不象理論上這麼簡單,特別的IE6中並非如你所想,好象有時可以定義高度,有時它就不知何原因失效了!
[Ctrl+A全部選擇提示:你可先修改部分代碼,再按運行]
◆分析:從代碼中我總結了一些知識點
1.當一個空DIV只給高度時,它的高度在IE6下是可控的.一些元素如background-color,border...都不會影響高度的值;
2.如樣式中有了height的話那IE會默認會有一個高度,其它的值如zoom:1也會產生這個"layout"可以自己嘗試測試其它樣式;
3.空DIV如果付與了一個"layout"的話,那麼它的高度就與文字大小有關了,具體的文字大小所顯示的實際高度值從測試頁中可見;
4.可以看出IE所能顯示的文字的最小高度值為2PX;
5.在實際解決問題中,我們就根據它的特點,因材施教,在樣式中加入font-size:數值;如果height:12px;那麼你的font-size要小於等於10px,也就是最大值可取到10px;在大的話會被文字撐開(撐開內容是IE6以下版本的一個BUG),所以最省事的方法也就是設置文字大小為0;
以都是用設字體大小的辦法解決問題,有的人還要加入一個行高,經測試行高對高度沒有影響.所以加入行高沒有必要.
第二個解決問題的方法是加入overflow:hidden;思路就是超出部分隱藏起來,這也是一個很好的方法!
說了那麼多,我們只是的用測試的手段來分析一下總結出它的規律,當做一個技術研究,這樣印象也深入一些,其實就兩種方法,你只要記住這兩種方法就可以了.
◆第一種方法:
- div{
- font-size:0;/*關於單位的寫法是:如果是0值就可以不用寫單位,
- 非0值要寫單位;(你同樣可以寫為0px.)*/
- }
◆第二種方法
- div{
- overflow:hidden;
- }
原文鏈接:http://www.soidc.Net/articles/1213781627945/20070530/1214037288269_1.Html