44种IE css bug实例测试总结[转]

来源:互联网 发布:smt贴片机编程怎么学 编辑:程序博客网 时间:2024/05/04 02:28
 web前端,我们可以把它理解成浏览器端。从这种意义上来讲,开发者日常工作跟浏览器关系是相对紧密的;我们今天要探讨的问题,就是关于浏览器中的另类(当然开发人员是这么认为的)—IE 对CSS解释和渲染上的一些bug,以及对这些bug的解决方案。

    当然你会说,ie的CSS bug咱都给haslayout属性来解决不就完了;您这就有点儿太低估ie的“能力”了;不否认在接下来的实例中,确实有的bug是haslayout属性造成的,但不是全部。

    以下的44个bug及解决方案实例是从一篇老外的博文上翻译过来的(其实这博客地址已经在我的收藏夹呆了快一年)了,之所以这次抽时间来翻译它,也是因为最近项目中出现的N多问题,我发现都能从这里找到;其实早前在豆丁网上看到有人翻译过(只是对BUG list做了简单的翻译,而实例却没有),我想自己亲自来做一变实例测试,对自己还是有很大好处的,而且也想把这个拿出来分享。

    注意:1)以下关于ie 的CSS bug在我注明的测试日之前是一直存在的(吼吼。。以后的事儿谁也不知道);2)关于bug的解决方案在我注明测试日之前是有效的。3)查看bug请点击bug Name 相关链接,查看解决方案请点击”GO”;
说明:如果您觉得看英文比较爽,请猛点这里查看原文(http://haslayout.net/css/)

实例LIST>>

General Internet Explorer CSS BugsBug Name影响版本解决方案bug描述>label标签中有img标签 无法focus到表单元素IE8, IE7, IE6Go当img标签包含在label标签中,点击img标签时,无法触发form元素选中事件>button元素 不会自动居中IE8GoGo2Button元素和input元素如:type=submit,type=button,type=reset and so on,当应用{display:block;margin-left:auto;margin
:auto;}属性时,是不起作用的。>错误的浮动布局IE7, IE6Go连续N个浮动元素且有clear属性时,显示出错误的排版(宽度没有自适应)>页面滚动BugIE7, IE6Go非常怪异的溢出,看代码>连续浮动元素BugIE7, IE6Go在连续浮动元素中,最后一个与倒数第2个元素间会出现一段留白。>连续浮动元素会重复出现最后一个元素的BugIE7, IE6Go在连续浮动元素中,最后一个元素是重复的。>空标签会有height值IE7, IE6Go拥有layout属性的空标签会有height值>表单元素双margin值IE7, IE6Goinput textarea元素在水平方向的margin值会继承父级元素的margin和“layout”>边框dotted属性值等同dashed属性值ie7IE7Go当元素某边应用{1px dotted}属性且至少有一边的宽度大于1px时,dotted会出现dashed效果>relative属性overflow失效IE7, IE6Go当子元素设置position为relative的时候,父元素的overflow属性值hidden与auto均失效>IE7 “Broken” :hover Absolute BugIE7Go当子元素设置position为relative的时候,父元素的overflow属性值hidden与auto均失效>Button Background Shift On :active BugIE8Go:active时背景偏移当在button input type=”submit”标签应用:active状态时背景偏上及偏下>Invisible Hover Border BugIE8Gohover时边框隐藏元素设置了outline属性,当:hover状态时,bottom边框会完全不显示或少1px;>Percentage Padding Margin BugIE8Go元素垂直方向设置margin值,且父元素设置了padding值为百分比以及父元素的父级设置了border或padding属性是,产生的bug,且看实例:>图片浮动list标记bugIE8Go当list有浮动图片是list标记位置错误或根本不显示>TH标签没有继承text-align属性bugIE8GoTH元素不会继承来自其父元素的text-align的属性值>32个style限制IE8, IE7, IE6Go页面中style标签大于等于32个时,第32个及之后的style都将被忽略(当然包括
@import这种形式外链的样式表)>hover状态下白色背景忽略bugIE7Go:hover时背景不会改变>ie7下子选择器注释bugIE7Go在注释后包含有子选择器的选择器会被忽视;>使用*HTML bugIE6Go* HTML选择器ie6是能识别的>ie6忽略!important bugIE6Go当我们在CSS规则后面加上!important 关键字时,ie6是不能识别的;>PNG背景与背景颜色不匹配IE8, IE7, IE6Go元素应用PNG背景图片与背景颜色,且PNG图片的颜色与背景颜色值相同,但ie表现bug>margin值为auto无法居中 暂且叫伪bugIE8, IE7, IE6Go给块级元素设置margin值为auto时没法居中>:first-line !important规则无用IE8Go当应用:first-line伪类,且有!important规则是,在ie8下是无法正常显示的>:first-letter忽视bugIE6Go此bug是由一个有趣的原因引起;>不完全的点击bugIE7, IE6Goa元素仅仅在有文字的地方才能点击,且:hover效果也只有鼠标移动到文字上才会出现>浮动元素阶梯状bugIE7, IE6Go浮动元素像楼梯状排列在一起>列表背景消失bugIE6Goli,dt,dd元素背景不显示>noscript标签背景与边框bugIE8, IE7, IE6Gonoscript元素只有在浏览器禁用script时才会出现,但在ie浏览器却非全是如此;>透明区域无法点击bugIE8, IE7, IE6Go用PNG图片做背景时,a标签的透明区域无法点击;>list位置偏移bugIE8Go在ie8中,我们看到list与标记向下偏移>ol列表数没有增加bugIE7, IE6Go在ie6 7中我们无法看到ol列表数增加,而始终是1,不会发生变化>ul与ol列表编号与符号隐藏bugIE7, IE6Go在ie6 7中我们无法看到ol与ul列表数与图标;>无法让图片垂直居中IE7, IE6Go给元素使用line-height方法无法让内部图片垂直居中显示;>背景图片不显示IE8, IE7, IE6Gobackground 属性应用时在ie中背景图片不显示>自定义鼠标bugIE8, IE7, IE6Go自定义鼠标在ie中不显示>背景溢出bugIE6Go背景色会从一个元素溢出到与他下面相邻的元素里>高度扩大BugIE6GoGo元素自身的高度大于对其定义的高度(此高度值很小)>宽度度扩大BugIE6Go元素自身的高度大于对其定义的宽度(英文状态下)>双边距bugIE6Go浮动元素产生双倍的左右边距>负边距bugIE7, IE6Go当元素定义了负边距时,超出父元素部分会被隐藏掉;>斜体字浮动bugIE6Go浮动元素字体为斜体时,与其相邻的浮动元素会被挤下;>3px间隙bugIE6Go浮动元素相邻的元素或者有3px的间隙,或者向下移动了位置>Text-Align BugIE7, IE6Gotext-align属性影响块级元素

原文地址(爱词霸UED):http://ued.iciba.com/?p=401

0 0
原创粉丝点击