当前位置:  编程技术>WEB前端

当ie7不认!important之后 [布局的解决办法]

    来源: 互联网  发布时间:2014-09-06

    本文导语:  在IE7之前,我们在布局时常用!important来解决IE和FF之间的差别; 但是在IE7出来之后,!important对IE7就不起作用了,而有些时候IE7的解释方法又与FF和IE6不同;这时新的问题就出现了;用!important可以解决IE6但是解决不了IE7; 这样在不同的...

在IE7之前,我们在布局时常用!important来解决IE和FF之间的差别; 但是在IE7出来之后,!important对IE7就不起作用了,而有些时候IE7的解释方法又与FF和IE6不同;这时新的问题就出现了;用!important可以解决IE6但是解决不了IE7; 这样在不同的浏览器中看到的同一个网页的效果就不同了;

这是前天作布局时的一个问题;可以先看一下效果;http://www.zishu.cn/blogview.asp?logID=553 

或者运行一下下边的代码也可以同样看到效果:
代码如下:





zishu.cn test

body{ font-size:12px; line-height:1.8; font-family:Verdana, "宋体", Arial,Sans; text-align:center; background:#FFF; color:#666; margin:50px; padding:0; list-style:none; }
a:link,a:visited{color:#000099; text-decoration: underline;}
a:hover,a:active{color:#000;text-decoration: none;}
#zishu_test li{ float:left; width:14%;text-align:center; margin:0 auto; list-style:none }
#zishu_test li a{border-right:1px solid #fff;border-bottom:1px solid #fff; width:100px; height:110px; background:#fff;display:block; padding-top:10px; margin:auto}
#zishu_test li img{ width:75px; height:75px; display:block; text-align:center; margin:auto; background:#FFF; padding:3px; border:1px solid #D8A18B;}
#zishu_test li span{display:none;}
#zishu_test li a:hover span{ margin-top:-10px;display:block; border-bottom:1px solid #666; border-right:1px solid #666; background:#FA9000; width:100px; color:#FFF; position:absolute; } 
* html #zishu_test li a:hover span {margin-left:-8px; } /* IE6 */ 
*+html #zishu_test li a:hover span {margin-left:-8px; }/* IE7*/ 
#zishu_test li a:hover{ border-right:1px solid #D8A18B;border-bottom:1px solid #D8A18B; width:100px; height:110px; background:#F5F5F5;display:block; padding-top:10px;} 




  

        
  • 64d / 47 hitspixu

  •     
  • 24d / 35 hits秀才

  •     
  • 66d / 87 hits透露

  •     
  • 40d / 34 hitsLIVID

  •     
  • 47d / 56 hits老孟

  •     
  • 42d / 36hits小玉

  •     
  • 63d / 67 hitspixu

  •   





在这个例子中,如果我把
 程序代码
*+html #zishu_test li a:hover span {margin-left:-8px; }/* IE7*/ 
这行删除;那么在IE7中;就会有差别了;

为了解决这个问题,我看了;http://www.blueidea.com/tech/site/2006/3626.asp 里边的一种方法; 但是如果程序员和布局人不是同一个人的话;这样的方法很不好控制; 于是才有了下边的方法;

以下是代码; 
 程序代码
代码如下:

* html #zishu_test li a:hover span {margin-left:-8px; } /* IE6 */  
*+html #zishu_test li a:hover span {margin-left:-8px; }/* IE7*/  

这是针对IE6和IE7的两种方法;
“*+html”被ie7与ie5.01所使用,而区分ie7与ie5.01又有很简单的方法,便是important,把important写在前面,这样才能形成了单独针对ie7 hack的方法了。

比如:

*+html div.IE7 { 
width:200px; !important; 
width:100px;
}

    
 
 

您可能感兴趣的文章:

  • !important在ie7.0的hack方法
  • 网页布局+纯CSS纵向下拉菜单 IE6/IE7兼容
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • IE7 增强插件 IE7Pro
  • 区分IE6,IE7,firefox的CSS hack
  • 解决IE兼容性问题 IE7.JS
  • css ie6 ie7 ff的CSS hack使用技巧
  • 一个针对IE7的CSS Hack
  • Internet Explorer 8 beta 中文版与IE7共存的解决方法
  • ie6,ie7,ie8完美支持position:fixed的终极解决方案
  • 通过CSS Hack 区分 FF/IE7/IE6/IE5.5/IE5 代码推荐
  • 博客 iis7站长之家
  • 多浏览器下IE6 IE7 firefox li 间距问题第1/2页
  • IE7 beta2的CSS兼容性
  • 浏览器兼容解决FF/IE6/IE7背景专用CSS HACK
  • jsp 文件上传浏览,支持ie6,ie7,ie8
  • 解决IE7以下版本不支持无A状态伪类的几种方法
  • 去除链接元素的虚线框 兼容IE7、IE6、FF
  • jQuery实现简单网页遮罩层/弹出层效果兼容IE6、IE7
  • 支持IE6 IE7 Firefox 的纯CSS的下拉菜单
  • IE6/IE7/IE8/IE9中tbody的innerHTML不能赋值的完美解决方案
  • IE6,IE7和firefox对DIV的支持区别
  • CSS hack实现 CSS完美兼容IE6/IE7/FF的通用方法


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3