浏览器兼容性问题

1、问题:div中的图片间隙(出现在IE6及更低版本中)

 描述:在 div 中插入图片时,图片会将 div 下方撑大三像素

 解决方法:将 < img > 转换为块级元素,给 < img >添加声明:_display:block;

2、问题:双倍浮向(双倍边距)

 描述:当 IE6 及更低版本浏览器在解析浮动元素时,会把浮向边界加倍显示。

 解决方法:给浮动元素添加声明:_display:inline;

3、问题:默认高度(IE6)

 描述:在 IE6 及以下版本中,部分块元素拥有默认高度(低于18px高度)

 解决方法:给元素添加声明:_font-size:0;或者 _overflow:hidden;

4、问题:表单元素行高不一致(IE,MOZ,C,O,S)

 描述:表单元素行高对齐方式不一致

 解决方法:给表单元素添加声明:float:left;

5、问题:按钮元素默认大小不一

 描述:各浏览器中按钮元素大小不一致

 解决方法:①,统一大小(用 a 标签模拟)

  ②,在 input 上写按钮样式,一定把 input 边框去掉

  ③,按钮如果是一个图片,直接把图片作为按钮的背景图即可

6、问题:百分比bug

 描述:在 IE6 及以下版本中 在解析百分比时,会按四舍五入方式计算从而导致 50% 加 50% 大于 100% 的情况

 解决方法:给右面的浮动元素添加声明:clear:right;

7、问题:鼠标指针bug

 描述:cursor 属性的 hand 属性值只支持 IE 浏览器, cursor 属性的 pointer 属性值 IE6.0以上版本及其他浏览器都支持

 解决方法:统一某元素鼠标指针形状为手型,应添加声明:cursor:pointer;

8、问题:透明属性

 解决方法:IE 浏览器写法,filter:alpha(opacity=value);取值范围1~100

  兼容其他浏览器,opacity:value;取值范围 0~1

 注意:浏览器父级元素设置透明属性,子级元素会继承

 过滤器(filter)

 1、下划线属性过滤器:

  在一个属性前面增加下划线后,由于符合标准的浏览器 不能识别带有下划线的属性 而忽略这个声明,但是在 IE6 及更低版本浏览器中会解析

  语法:选择符{ _属性:属性值;} // div{ _display:inline;}

 2、!important 关键字过滤器

  表示所附加的声明具有最高的优先级,但是 IE6 及更低版本不能识别

  语法:选择符{ 属性:属性值!important;}  //  .d2{ color:red!important;color:green;} 字体颜色红色

 3、*属性过滤器

  在一个属性前面增加了 * 后,该属性只能被 IE7 浏览器识别,其他浏览器会忽略该属性的作用

  语法:选择符{ *属性:属性值;}// div{ color:green; *color:red; }   只有在IE7浏览器下字体颜色显示红色,其他浏览器显示 绿色

posted @ 2019-09-03 13:55  晴天宝宝i  阅读(152)  评论(0编辑  收藏  举报