IE浏览器下常见的CSS兼容问题_html/css_WEB-ITnose
宽高bug
【1】IE6-浏览器下子元素能撑开父级设置好的宽高
Document
- test
【2】IE6-浏览器下最小高度问题,设置(0-15px)高度小于等于15px的元素,在IE6下会被当作15px来处理
【解决】
[1]设置font-size为0,但最小高度为2px
[2]设置overflow:hidden,但最小高度为1px
[3]要想实现最小高度为0,只能是不设置高度
Document
边框bug
【1】IE6-浏览器下1px的点线边框,点线会变成虚线
Document
【2】标准下背景会延伸到边框区,而IE7-浏览器下背景只延伸到padding区
Document
【3】在IE10-浏览器下被标签包含的元素会产生边框
【解决】给图片设置{border: none}
Document
盒模型bug
【1】IE7-浏览器下父级有边框,无法阻止子元素的上下margin值传递
【解决】触发父级的haslayout
Document
【2】IE7-浏览器下不设置文档声明会导致怪异盒模型解析。在怪异盒模型下内容宽=width-2*padding-2*borderWidth
Document
【3】IE6-浏览器下使用margin负值,使元素移出父级,移出部分会被父级裁掉
【解决】给子级加相对定位relative
Document
LIbug
【1】(li的4px空隙bug)IE7-浏览器下,li本身没浮动,但内容有浮动,li下边会多出4px的空隙
【解决】
[1]给li加浮动
[2]设置vertical-align
Document
- 1231
- 1232
【2】(li下的4px间隙和最小高度共存的问题)IE7浏览器下,当li下的4px间隙问题和最小高度问题共存的时候,设置垂直对齐方式无效
【解决】给li加浮动
Document
- 1231
- 1232
【3】(li的3px空隙bug)IE7-浏览器下li有高度或宽度或zoom:1,且仅包含内联元素,且内联元素被设置为display:block,li下会多出3px的垂直间距
【解决】触发li中子元素的haslayout
Document
- 1231
- 1232
浮动bug
【1】(3pxbug)在IE6-浏览器下浮动元素和非浮动元素相邻时,会出现3px像素的空隙
【解决】
[1]使用CSShack,给浮动元素设置相反方向的-3px的margin值,将非浮动元素的相应方向的margin设为0(加IE6前缀)
[2]去掉非浮动元素的margin值,加浮动。
Document
【2】IE6-下父元素浮动后,且子元素设置了高度,如果父元素不设置宽度,宽度会撑满整行
【解决】
[1]给浮动的父元素设置宽度
[2]给子元素设置宽度
[3]给子元素设置浮动
Document
- 我是内容
【3】(浮动折行)在IE7-浏览器下,如果两个元素一个右浮动,一个不浮动。浮动元素会折到下一行
【解决】
[1]给不浮动的元素也加浮动
[2]在HTML中先放右浮动的元素
Document 我是不浮动 我是右浮动
【4】(双边距bug)IE6-浏览器下块元素有浮动,且有横向的margin值。若仅有左margin,最左边的浮动的块元素的左margin会放大成两倍。若仅有右margin,最右边的浮动的块元素的右margin会放大成两倍。若左右都有,最左边的左margin和最右边的右margin会放大成两倍。
【解决】给块元素设置display:inline
Document
【5】(margin-bottomBUG)在IE7-浏览器下父级宽度和每行元素的宽度之和相差超过3px时,或者有不满行的情况,最后一行的margin-bottom失效
【解决】尽量不要用margin-bottom,而用margin-top代替
Document
【6】(文字溢出bug)IE6-浏览器下两个浮动元素(浮动元素不能是li)一个左浮无宽度,另一个右浮动宽度与父级宽度相差不超过3px,浮动元素中间有注释或者内联元素,文字就被复制
【解决】
[1]将注释去掉
[2]将内联元素变成块元素
[3]内联元素及注释整个用
Document 多出来的一头猪吗
定位bug
【1】在IE7-浏览器下子元素有相对定位,父级的overflow无效
【解决】给父级也设置相对定位
Document
【2】在IE6-浏览器下浮动元素和绝对定位元素是并列关系,且浮动元素设置margin-left和width的和正好等于父元素的宽度,这时绝对定位元素会消失
【解决】给定位元素外面包一个div
Document
- 定位元素
- 浮动元素
【3】在IE6-浏览器下绝对定位元素的父级元素的宽度为奇数时,元素的right会有1px的偏差;高度为奇数时,元素的bottom会有1px的偏差
Document
- 定位元素
表单bug
【1】IE6-浏览器下label标签只支持for属性,不支持仅仅包含的写法
【解决】使用for属性
Document
【2】(input空隙问题)当input元素被div包围时,IE6-浏览器下它们之间上下会各多出1px的空隙;而IE7、8浏览器下它们之间的上边会多出1px的空隙
【解决】给input加浮动
Document
【3】IE6-浏览器下当input元素被div包围时,在已经给input设置浮动的情况下,设置border:none无法得到理想效果
【解决】
[1]设置border:0
[2]重置input的背景
Document
【4】IE7-浏览器下输入类型表单控件如
Document
【5】IE6-浏览器中select控件无法被
【解决】iframe比select优先级高,把iframe嵌套在
相关文章
相关视频
专题推荐
-
独孤九贱-php全栈开发教程
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
-
玉女心经-web前端开发教程
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
-
天龙八部-实战开发教程
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
上一篇: php不跳转页面怎么办
推荐阅读
-
IE浏览器下常见的CSS兼容问题_html/css_WEB-ITnose
-
CSS在不同浏览器下实现颜色渐变效果_html/css_WEB-ITnose
-
innerText,innerHTML,outerHTML的用法 博客分类: HTML CSS HTML正则表达式IE脚本浏览器
-
innerText,innerHTML,outerHTML的用法 博客分类: HTML CSS HTML正则表达式IE脚本浏览器
-
有frame的情况下,如何做菜单的当前效果,如何让左边菜单随着上面菜单的变化而变化_html/css_WEB-ITnose
-
IE6不支持:hover伪类效果的解决办法_html/css_WEB-ITnose
-
初学HTML 有个简单的小问题帮忙看一下_html/css_WEB-ITnose
-
firefox(ff)下无法显示bootstrap图标问题的解决方案_html/css_WEB-ITnose
-
iframe在IE9下样式混乱?_html/css_WEB-ITnose
-
怎样解决浏览器兼容问题?求救!_html/css_WEB-ITnose
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论