使用纯CSS实现未知尺寸的图片(但高宽都小于200px)在200px的正方形容器中水平和垂直居中。

.box {
       
/*非IE的主流浏览器识别的垂直居中的方法*/
        display
: table-cell;
        vertical
-align:middle;
       
/*设置水平居中*/
        text
-align:center;
       
/* 针对IE的Hack */
       
*display: block;
       
*font-size: 175px;/*约为高度的0.873,200*0.873 约为175*/
       
*font-family:Arial;/*防止非utf-8引起的hack失效问题,如gbk编码*/
        width:200px;
        height
:200px;
        border
: 1px solid #eee;
}
.box img {
       
/*设置图片垂直居中*/
        vertical
-align:middle;
}<div class="box">
       
<img src="http://www.playgoogle.com/image/logo/playgoogleLogo.jpg" />
</div>

这种解决方法的好处是不用加一些不必要的xhtml代码。缺陷是需要已知容器的高度,在容器高度未知时,无法处理。

可同时区分IE8、IE7、IE6、Firefox3、Firefox2的CSS hacks

可同时区分IE8、IE7、IE6、Firefox3、Firefox2的CSS hacks:

.test{
    
color:/*\**/#00f\9; /* IE8 */
}
.test,
.test:-moz-any-link{
    
color:#f60; /* Firefox2 */
}
.test,
.test:default{
    
color:#000; /* Firefox3 */
    
*color:#f00; /* IE7 */
    _
color:#0f0; /* IE6 */
}

可同时区分IE8、IE7、IE6、Firefox的CSS hacks:

.test{
    
color:#000; /* Firefox */
    
color:/*\**/#00f\9; /* IE8 */
    
*color:#f00; /* IE7 */
    _
color:#0f0; /* IE6 */
}

关于IE8的hacks:

.test{
    
color:/*\**/#00f\9; /* IE8 only */
    
color:#00f\9; /* 适用于所有IE版本 */
}