广告位招租 联系qq:165345322

CSS实例:区分IE6、IE7、FF对HR解释的CSS hack

时间:2007-12-30 22:36:58   来源:  作者:  点击:次  出处:技术无忧
关键字:css ie Firefox 兼容

 因为IE和Firefox对hr默认的各种属性margin,padding等等都不一样,所以定义为0也没用。
我们可以通过下面的CSS hack来解决:
    hr.ducky{
        margin-bottom:1px !important;
        >margin-bottom:8px !important;
        margin-bottom:8px
    }

  不只是针对hr,这只是一个例子。IE6和IE7对hr边距margin的解释是一样的,所以都定为8px,Firefox与IE有区别,下边距只能为1px。

第一条IE6,IE7,Firefox都读懂,这时候都是1px;第二条IE6,IE7能读懂,都用第二条的8px覆盖了第一条的1px, Firefox不懂,跳到分号以后的下一条,这时候IE6,IE7是8px,FF是1px;第三句IE6,IE7,FF都读懂,因为IE6本身的BUG, 所以用第三条覆盖了第二条,IE7因为第二条的!important所以忽视第三条,FF同理忽视第三条。

这个时候,IE6看第三条,IE7看第二条,FF看第一条。虽然在这个例子里,第三条没有必要,因为IE6与IE7对hr的解释是一样的,但是这里是可以对三种浏览器版本赋予不同的值。

dUcky认为最好的情况就是不用hack,只要写的规范,一般问题不大,如果有一些差别的话,只要以IE作为第一浏览效果,FF稍微有点区别都没关系,没必要hack,不然维护起来很麻烦,当然只是我的想法。


文章评论

共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面

300x250广告位招租