① IE6下默認的字體尺寸大致在 12 – 14px 之間,當你試圖定義一個高度小於這個默認值的 div 的時候, IE
會固執的認爲這個層的高度不應該小於字體的行高。所以即使你用 height:4px; 來定義了一個
div 的高度,實際在 IE 下顯示的仍然是一個 12 px 左右高度的層。添加overflow:
hidden; 解決問題。
<div style=”height: 4px; overflow:
hidden;”></div>
② 應該多加一個屬性:font-size:0px;就可以了.
③
首先要看DIV有無內容,然後纔會決定誰影響其高度:
- 當DIV爲一個空標籤的時候:DIV有一個默認的高度(大約20px左右吧),如果hiehgt的值小於這個數字,DIV不會有任何反應,大於則可以控制;而line-height在這兒根本沒有用,因爲沒有內容,所以也就不存在行高了。
- 當
DIV標籤內有內容時(哪怕是一個 ):DIV的高度依然是默認的(依舊是20px左右),而這時候的height仍然只能
設置大於這個數的值,否則DIV不會受控制;但是,這時候卻可以使用line-height來控制DIV的高度,準確來說是控制DIV內的內容行高,使
DIV受行高的變化而變化。
不過,如果你設置了height的值,那麼當line-height小於height的值的時候,DIV取的是height的 值;如果line-height大於height的值,那這時候影響DIV高度的就是line-height的值了。
在其它的瀏覽器就不會出現這個問題,也就是說line-height大於height的時候,DIV的高度依舊是height,最多是看不見內容,但DIV的高度不會被line-height所控制。
期間有一個朋友評論說“使用overflow:hidden;第二種情況也是由height來控制了”:嘿嘿,試了一下,的確如此,當DIV的高度被line-height撐高的時候,使用overflow:hidden;則會使超出DIV高度那部份的內容不可見,從而使DIV的高度受hiehgt控制。