日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

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

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

復制代碼 代碼如下:
div
precode
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.6em0;
padding:01.6em;
}

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

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

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


而在IE7中的顯示也有些不同 , 多了一個惹人討厭的右側滾動條
圖2 IE7下的效果
修正IE下使用CSS屬性overflow的bug


【修正IE下使用CSS屬性overflow的bug】IE6的bug可以通過給containing block添加width的方法解決 , 即
復制代碼 代碼如下:
pre{
overflow:auto;
background-color:#fff0f5;
margin:1.6em0;
padding:01.6em;
width:90%;
}

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

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

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

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

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


您可能感興趣的文章:PHP has encountered a Stack overflow問題解決方法css之使table也能overflow:hiddenandroid PopupWindow 和 Activity彈出窗口實現(xiàn)方式android popwindow實現(xiàn)左側彈出菜單層及PopupWindow主要方法介紹Android Animation實戰(zhàn)之屏幕底部彈出PopupWindowAndroid入門之PopupWindow用法實例解析Android之用PopupWindow實現(xiàn)彈出菜單的方法詳解Android編程實現(xiàn)popupwindow彈出后屏幕背景變成半透明效果Android PopupWindow 點擊外面取消實現(xiàn)代碼Android用PopupWindow實現(xiàn)自定義overflow

    推薦閱讀