欢迎来到山村网

CSS浏览器兼容性Hack大全

2019-03-02 11:48:05浏览:418 来源:山村网   
核心摘要:  IE6/7实现display:inline-block  有两种方法,第一种,先声明该元素display:inline-block,触发其layout,再在第二条样式

  IE6/7实现display:inline-block

  有两种方法,第一种,先声明该元素display:inline-block,触发其layout,再在第二条样式上再声明为display:inline,如:

  代码如下:

  .test{display:inline-block; }

  .test{display:inline;}

  第二种方法(推荐),利用IE6/7的Css专有前缀来触发layout(感觉怎么有点像js的setTimeout):

  代码如下:

  .test{display:inline-block; *zoom: 1; *display: inline;}

  IE6双倍浮动行距

  在IE6下,当一个div在另一个div向左浮动,并且带有margin-left的样式,那么这时它的左边距是样式定义的双倍,同理如果是向右浮动和margin-right,效果是一样的。不过在此后浮动的div的边距反倒是没问题的,只是第一个有此问题。

  这时,解决的方法是:简单给该div加个_display:inline;样式即可

  IE6-IE10的css hack

  代码如下:

  p{

  color: black;

  color: orange;

  *color: blue;

  _color: red;

  }

  :root p{

  color: yellow;

  }

  IE7/8下PNG图片背景有黑色的东西

  那是因为你使用了滤镜效果,比如filter:alpha(opacity=100);,把它去掉就可以了

  IE7/8下元素无故消失、看不见、点击不了

  在其他浏览器明明是有东西的,但来到IE7/8就无故消失了。出现这种情况,你试下给该元素添加background:red;或者之前是去掉文字的text-indent:-9999em; font-size:0;的,改为font-size:18px; text-indent:0;,你就会发现消失的元素终于又出现了。对于这种方法,解决方法是,在IE7/8下,给该元素添加背景色。但同时你不想让该元素可视,那么就加上 opacity:0; filter:alpha(opacity=0);

  IE7/8下样式载入不完全

  那应该是css文件的charset声明和文件本身的编码不一致问题,将这个改正一下即可。

  暂时先记录这些吧,以后遇到了再继续更新,小伙伴们也可以搜集一下,发给我,本文持续更新

(责任编辑:豆豆)
下一篇:

plsql developer怎么连接数据库

上一篇:

padding ie 不兼容问题

  • 信息二维码

    手机看新闻

  • 分享到
打赏
免责声明
• 
本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 xfptx@outlook.com