復制代碼 代碼如下:<div> <pre><code> <a href="http://creativecommons.org/licenses/by-nc-sa/2.5/cn/" rel="license">遵守我的版權</a> " /> 影音先锋中文在线视频,男人的天堂久久,亚洲aaa精品

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

修正IE下使用CSS屬性overflow的bug

我們要建立一個測試用HTML文件,以下是關鍵的代碼片斷

復制代碼 代碼如下:
<div> 
    <pre><code> 
        <a >遵守我的版權</a> 
        <a >遵守我的版權</a> 
        <a >遵守我的版權</a> 
        <a >遵守我的版權</a> 
        <a >遵守我的版權</a> 
    </code></pre> 
</div> 
在以上代碼中我將應用以下CSS

復制代碼 代碼如下:
div{ 
   width: 60%; 


pre{ 
   overflow : auto ;  
   background-color : #fff0f5 ; 
   margin : 1.6em 0 ; 
   padding : 0 1.6em ; 


以上代碼在Firefox中的顯示是可以預料的。

但是在IE6中,沒有任何 overflow 效果能夠顯示出來

圖1 IE6下的效果IE6 overflow bug

而在IE7中的顯示也有些不同,多了一個惹人討厭的右側滾動條

圖2 IE7下的效果IE7 overflow bug

IE6的bug可以通過給containing block添加width的方法解決,即
復制代碼 代碼如下:
pre{ 
    overflow : auto ; 
    background-color : #fff0f5 ; 
    margin : 1.6em 0 ; 
    padding : 0 1.6em ; 
    width : 90% ; 


此時,IE6的滾動條出來了,但是它與IE7表現的一樣,多了一個右側滾動條。

多一個右側滾動條的原因在于:IE總是將底部滾動條添加在元素的總高度的內部,這樣使得元素的一部分高度被底部滾動條占據,不能完全顯示,所以IE就自動添加了右側滾動條使得元素被擋住的內容也能夠滾動后看到 。

最后為了去除IE右側的滾動條,我們給containing block添加以下CSS
復制代碼 代碼如下:
pre{ 
    overflow : auto ;  
    background-color : #fff0f5 ; 
    margin : 1.6em 0 ; 
    padding : 0 1.6em ; 
    width : 90% ; 
    overflow-y : hidden ; 


這樣我們就在IE中創造出了和Firefox、Opera和Safari同樣的 overflow : auto 效果。

在實際應用中,這一效果可以應用于所有固定格式的元素(通常為 pre 元素),最常見的是代碼塊。

HTML/CSS技術修正IE下使用CSS屬性overflow的bug,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 镇坪县| 河西区| 兰溪市| 巨鹿县| 米易县| 合江县| 饶阳县| 赞皇县| 电白县| 余姚市| 宣汉县| 方城县| 保亭| 咸丰县| 晋宁县| 乐都县| 榆树市| 墨竹工卡县| 三门县| 西城区| 外汇| 灵宝市| 安国市| 大埔区| 玉屏| 广南县| 桂平市| 驻马店市| 犍为县| 云霄县| 封丘县| 蛟河市| 宜兰县| 上高县| 张家港市| 石城县| 封开县| 武义县| 蒙城县| 河曲县| 谢通门县|