button在IE下面不会自动上下居中对齐,即使写了vertical-align也没有用。因此只能用padding来让他居中。
button定义了height以后,再定义padding,padding就会默认从height中扣除,这种情况在IE7,8 和FF下面都有出现,但是在chrome下面没有。
解决方法就是为IE添加hack。
IE下面的hack:
IE6是“_”,IE7是“*”,就不用说了。IE8下面单独的hack是\0,IE6+的hack是\9。
浏览器hack:
.test{
color:#000000; /* FF,OP支持 */
color:#0000FF\9; /* IE6+支持*/
color:#0000FF\0; /* IE8支持*/
[;color:#00FF00;]; /* SF,CH支持 */
*color:#FFFF00; /* IE7支持 */
_color:#FF0000; /* IE6支持 */
}
其他的比较好理解,Safari和chrome下面的比较奇怪,是 方括号+分号+属性+方括号+分号的形式。
但是我在IE下面试验了一下,IE6,、7也可以识别这种方括号的形式。也就是说下面还是要加IE专用的hack。
FF倒是对这些hack一概不理,只认标准书写的属性。