浏览器
双核浏览器
游戏浏览器
高速浏览器
视频浏览器
IE浏览器
浏览器周边
手机浏览器
安卓游戏
音乐舞蹈
养成游戏
儿童游戏
仙侠手游
角色扮演
策略塔防
休闲益智
动作冒险
飞行射击
模拟经营
体育运动
赛车竞速
网络游戏
安卓软件
资讯阅读
生活服务
影音播放
购物理财
效率办公
趣味娱乐
交通出行
学习教育
摄影图像
在线音乐
系统工具
网络购物
聊天工具
安全杀毒
图片编辑
新闻资讯
软件资讯
游戏资讯
手机教程
手游攻略
游戏攻略
软件教程
IE专区
安卓专题
文章合集
电脑软件专题
安全软件
杀毒软件
系统安全
加密解密
防火墙
远程控制
木马查杀
影音软件
网络电视
视频播放
音乐播放
视频制作
音频编辑
录音录像
教育学习
外语学习
教育管理
早教启蒙
在线课堂
成人教育
资格考试
聊天社交
即时通讯
视频聊天
在线交友
变声器
表情包
办公软件
线上会议
文档管理
行业管理
考勤打卡
应用工具
输入法
下载工具
时钟日历
记事本
文件管理
计算器
编程开发
编程工具
JAVA相关
加壳脱壳
编程控件
数据库
网页源码
软件开发
补丁制作
系统美化
桌面制作
壁纸大全
系统主题
屏幕保护
桌面辅助
系统软件
系统优化
备份还原
系统检测
U盘工具
磁盘工具
驱动补丁
图文处理
图片素材
图像处理
图片制作
图片压缩
电子相册
抓图工具
其他软件
电子书籍
模拟器
辅助工具
交通出行
手机管理
其他工具
素材下载
字体素材
PPT素材
专区
文章合集
软件
游戏
浏览器
安卓专题
软件
游戏
浏览器
IEfans/ IE专区/ IE动态 /修正IE下使用CSS属性overflow的bug

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

2023-06-26 16:30:01 编辑:匿名

我们要建立一个测试用HTML文件,以下是关键的代码片断

复制代码 代码如下:
div
precode
ahref="http://creativecommons.org/licenses/by-nc-sa/2.5/cn/"rel="license"遵守我的版权/a
ahref="http://creativecommons.org/licenses/by-nc-sa/2.5/cn/"rel="license"遵守我的版权/a
ahref="http://creativecommons.org/licenses/by-nc-sa/2.5/cn/"rel="license"遵守我的版权/a
ahref="http://creativecommons.org/licenses/by-nc-sa/2.5/cn/"rel="license"遵守我的版权/a
ahref="http://creativecommons.org/licenses/by-nc-sa/2.5/cn/"rel="license"遵守我的版权/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下的效果IE6 overflow bug

而在IE7中的显示也有些不同,多了一个惹人讨厌的右侧滚动条

图2 IE7下的效果IE7 overflow bug

IE6的bug可以通过给containing block添加width的方法解决,即
复制代码 代码如下:
pre{
overflow:auto;
background-color:#fff0f5;
margin:1.6em0;
padding:01.6em;
width:90%;
}

此时,IE6的滚动条出来了,但是它与IE7表现的一样,多了一个右侧滚动条。

多一个右侧滚动条的原因在于:IE总是将底部滚动条添加在元素的总高度的内部,这样使得元素的一部分高度被底部滚动条占据,不能完全显示,所以IE就自动添加了右侧滚动条使得元素被挡住的内容也能够滚动后看到。

最后为了去除IE右侧的滚动条,我们给containingblock添加以下CSS
复制代码 代码如下:
pre{
overflow:auto;
background-color:#fff0f5;
margin:1.6em0;
padding:01.6em;
width:90%;
overflow-y:hidden;
}

这样我们就在IE中创造出了和Firefox、Opera和Safari同样的overflow:auto效果。

在实际应用中,这一效果可以应用于所有固定格式的元素(通常为pre元素),最常见的是代码块。

您可能感兴趣的文章:

  • PHP has encountered a Stack overflow问题解决方法
  • css之使table也能overflow:hidden
  • android PopupWindow 和 Activity弹出窗口实现方式
  • android popwindow实现左侧弹出菜单层及PopupWindow主要方法介绍
  • Android Animation实战之屏幕底部弹出PopupWindow
  • Android入门之PopupWindow用法实例解析
  • Android之用PopupWindow实现弹出菜单的方法详解
  • Android编程实现popupwindow弹出后屏幕背景变成半透明效果
  • Android PopupWindow 点击外面取消实现代码
  • Android用PopupWindow实现自定义overflow

相关推荐

浏览器更新