css的兼容性问题

目录

一、为什么会出现css的兼容性问题

二、如何解决css的兼容性问题

1、双倍浮动BUG

2、表单元素行高不一致

3、IE6(默认16px为最小)不识别较小高度的标签(一般为10px)

4、图片添加超链接时,在IE浏览器中会有蓝色的边框

5、最小高度min-height不兼容IE6

6、图片默认有间隙

7、按钮默认大小不一

8、百分比BUG

9、鼠标指针BUG

10、透明度设置,IE不识别opacity属性

11、上下margin重叠问题

12、给子元素设置margin-top.应用在了父元素上


一、为什么会出现css的兼容性问题

  • 浏览器众多,对css解析出的效果不一致。
  • 浏览器的内核(即浏览器的渲染引擎)

二、如何解决css的兼容性问题

1、双倍浮动BUG

  • 描述:块状元素设置了float属性后,又设置了横向的margin值,在IE6下显示的margin值要比设置的值大;
  • 解决方案:给float的元素添加 display:inline;将其转换为内联元素;

2、表单元素行高不一致

  • 解决方案:
  •   ①、给表单元素添加vertical-align:middle;
  •   ②、给表单元素添加float:left;

3、IE6(默认16px为最小)不识别较小高度的标签(一般为10px)

  • 解决方案:
  •   ①、给标签添加overflow:hidden;
  •   ②、给标签添加font-size:0;

4、图片添加超链接时,在IE浏览器中会有蓝色的边框

  • 解决方案:
  •   给图片添加border:0或者border:none;

5、最小高度min-height不兼容IE6

  • 解决方案:
  •   ①、min-height:100px;_height:100px;
  •   ②、min-height:100px;height:auto!important;height:100px;

6、图片默认有间隙

  • 解决方案:
  •   ①、给img添加float属性;
  •   ②、给img添加display:block;

7、按钮默认大小不一

  • 解决方案:
  •   ①、如果按钮是一张图片,直接用背景图作为按钮图片;
  •   ②、用a标记模拟按钮,使用JS实现其他功能;

8、百分比BUG

  • 描述:父元素设置100%,子元素各50%,在IE6下,50%+50%大于100%;
  • 解决方案:
  •   给右边的浮动元素添加clear:right;

9、鼠标指针BUG

  •   cursor:hand 只有IE浏览器识别;
  •   cursor:pointer;IE及以上浏览器和其他浏览器都识别(手型);

10、透明度设置,IE不识别opacity属性

  • 解决方案:
  •   标准写法:opacity:value;(取值范围0-1);
  •   兼容IE浏览器 filter:alpha(opacity=value);(取值范围1-100);

11、上下margin重叠问题

  • 描述:给上面的元素设置margin-bottom,给下面的元素设置margin-top,只能识别其中较大的那个值;
  • 解决方案:  
  •   ①、margin-top和margin-bottom 只设置其中一个值;
  •   ②、给其中一个元素再包裹一个盒子,并设置over-flow:hidden;

12、给子元素设置margin-top.应用在了父元素上

  • 解决方案:
  •   ①、把给子元素设置的margin-top改为给父元素设置padding-top;
  •   ②、给父元素设置1px的border,即border-top:1px solid transparent;
  •   ③、给父元素设置over-flow:hidden;
  •   ④、给父元素设置float:left;
  • 6
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

南初️

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值