1.
a:通常ie5/win中字的现实结果总是要比其他浏览器整整大一号,为了让所有浏览器兼容,我们需要利用CSS hack。
body{
font-size:x-small;/* for IE5/Win */
voice-family:"\"}\"";
voice-family:inherit;
font-size:small;/for compliant browsers */
}
html>body{/* be nice to Opera */
font-size:small;
}
只有IE5/Win能识别出
voice-family:"\"}\"";
这个结束的大括号,于是它会认为CSS规则已经结束。 Firefox、Opera等浏览器支持子选择器(>),而IE不识别(包括IE7)。
对于其他所有兼容浏览器,我们在后面用small覆盖了x-small。上面的第二个声明,我们称这个规则为“对Opera”友好的规则,因为它能防止Opera浏览器(以及某些其他浏览器)潜在地忽略掉hack代码之后的规则。
如果使用了Box Model Hack,这句声明就应该也要用上,它本质上确保了所有浏览器都能完整读取样式表中的下一条声明。
b:如果使用SBMH,那么我们前面的例子解决起来就更简单更明了一些
body{
font-size:small;
}
*html body{
font-size:x-small;/* for IE5/Win */
f\ont-size:small;/* for other IE versions */
}
*html 选择器来提供专门用于IE浏览器的声明。IE5/Win会忽略font-size属性中的反斜杠。
2.清浮动(:after伪类)
div:after{
content:".";
display:block;
height:0;
clear:both;
visibility:hidden;
}