这个IE和IE6只用CSS破解?

时间:2011-08-09 11:12:08

标签: css internet-explorer

<!--[if IE]>
    <style type="text/css">
        #botonHome .contButton p a span{ height:25px; }
        #botonHome .contButton p a span input{ position: relative; bottom:5px; }
    </style>
<![endif]-->

<!--[if IE 6]>
    <style type="text/css">
        #botonHome .contButton p a span input{ display: inline; margin:0px; padding:0px; bottom:0px; height:20px; }                                       
    </style>
<![endif]-->

最后我能够在所有浏览器中正确显示一个按钮,但我不想在我的html文件中使用这个内联代码。如何仅使用CSS解决IE的这种不同的CSS实现。

3 个答案:

答案 0 :(得分:3)

欺骗IE6只是在任何属性之前加上“_”,例如

   #botonHome .contButton p a span input{  _display: inline; _margin:0px; _padding:0px; _bottom:0px; _height:20px; }

更新:

点击css IE hacks

的此链接

答案 1 :(得分:3)

对于IE 6,在每种样式之前使用_下划线符号,对于IE 7,在每种样式之前使用*星号符号,对于IE8&amp;在使用\0/分号符号关闭样式之前,IE9使用;。请参阅下面的代码。

#botonHome .contButton p a span input {  

    /*For IE 6*/
    _display: inline; 
    _margin:0px; 
    _padding:0px; 
    _bottom:0px; 
    _height:20px;

     /*For IE 7*/

    *display: inline; 
    *margin:0px; 
    *padding:0px; 
    *bottom:0px; 
    *height:20px; 

    /*For IE 8 & 9*/

    display: inline\0/; 
    margin:0px\0/; 
    padding:0px\0/; 
    bottom:0px\0/; 
    height:20px\0/;
 }

答案 2 :(得分:1)

这些条件注释对于IE解决方法非常方便。我会使用它们,但不包括样式元素,而是包含一个css文件。这样,您就不必为每个页面添加整个样式,并且您可以更轻松地添加其他调整。