E1{
>background-color: black;
>background-color : green;
}
这个例子在IE6中得到了黑色的背景;而在IE5.5中得到的绿色的背景;在IE5中也得到了黑色的背景。这
就说明了第二句定义只有IE5.5能识别
,这是个很早就公布的HACK,可以在网上找到相关的资料,要注意的就是在属性名之后是有一个空格的。
到此我们已经把FF、IE5.5、IE6分离
出来了,那IE5呢?其实现在我们只要把IE5跟IE6分开就OK了,来看看例子:
E1{
>background-color: red;
}
E1{
>background-color: black;
}
这里我们又用到一个HACK,就是“E1{}”,这个定义在IE5以上的版本才能识别出来。这个例子得到
的结果是,在IE5中的背景色为红色;
在IE5以上版本中得到的是黑色背景。
终于把不同版本的浏览器都分离出来了,这样我们就可以为不同的浏览器定义不同的样式了。来看个完整
的例子:
E1{
width: 500px;
height: 50px;
background-color: red !important;
background-color: blue;
text-align:center;
}
E1{
>background-color: black;
>background-color : green;
}
需要注意的是,在上面例子中“background-color”定义的顺利不能改变,即FF-IE5-IE6-IE5.5。对于IE
的定义在属性前要加“>”,因为
“E1{}”这个HACK在FF中可以识别。也许你会想,上面的例子不是可以写成:
E1{
width: 500px;
height: 50px;
background-color: red;
>background-color: blue;
text-align:center;
}
E1{
>background-color: black;
>background-color : green;
}
这样不就又可以省下几个字节?是没错,可是HACK不是标准,如果滥用HACK,那只会离标准越来越远!
div+css实现Firefox和IE6兼容的垂直居中
Firefox中使用display: table-cell; vertical-align: middle;可以实现div垂直居中,而IE6中则需要
借助IE6中css的特点实现垂直居中。为
了实现Firefox和IE6兼容的垂直居中,还需要借助于!important标记。Firefox支持!important标记,而
IE6忽略!important标记,因此可以使
用! important标记区别Firefox和IE6。
[示例代码]<html>
<body>
<div style="display: table-cell; vertical-align: middle; height: 200px; border: 1px
solid red;">
<p>垂直居中,Firefox only</p>
<p>垂直居中,Firefox only</p>
<p>垂直居中,Firefox only</p>
</div>
<div style="border: 1px solid red; height: 200px; position: relative;">
<div style="position: absolute; top: 50%;">
<div style="position: relative; top: -50%;">










