!--[if IE]
link rel=stylesheet type=text/css href=ie.css /
![endif]--
这应该是我最常用的方法了,一般情况下,我们现在已经不用考虑IE5或者以下的浏览器了,这个注释让我们可以轻松HACK IE,并且它是最安全的方法,因为别的浏览器不会显示/识别它(这里应该感谢微软的细心,即使他精粗心在先)。
至于IE8 beta,以其为主浏览器的用户算起来应该不到K级,也暂时不是我们应该搞定的对象(当然,搞定它是最好不过的事)。或者我们应该把希望放在他正式版对CSS完美的支持,而现在我们把最重要的放在搞定IE6
/IE7,区分它们,我最常用的是下面的代码:
#forieothers{...} // 用这个搞定IE7
*html #forie6{} // 当然,这是写给IE6的
而你需要注意的就是,别把它们的顺序写倒了,因为#forieothers这个是会被IE6看到的,而根据CSS书写顺序的优先性,应该把让*html #forie6写在后面,让浏览器最终显示它,但IE7又看不到。
让IE6支持PNG透明图片#regular_logo
{
background:url(test.webp); width:150px; height:55px;
}
/* */
* html #regular_logo
{
background:none;
float:left;
width:150px;
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=test.
png, sizingMethod=scale);
}
/* */
这并不是我喜欢的方法,不过,或许你会喜欢。当然,有时候,我们导出GIF图片的时候,其效果和质量都可能不是很好,搞定PNG或许就是为这个而做的吧。也可能是由于自己并不是画图的高手,所以,比较少用。
让IE6支持min-width/max-width#container
{
min-width: 600px;
max-width: 1200px;
width:expression(document.body.clientWidth 600? 600px :
document.body.clientWidth 1200? 1200px : auto);
}
这应该是非常重要的技巧,也是比较常用的。就像,你以前可能用了太大的图片,但现在又想用一个栏比较小的主题,这时,这个方法就显得异常重要。抑或是,如果你想创建一个流体布局,这个代码对你来说是必不可少的。
当然,这三个并不能让你搞定所有IE的问题。不过,这应该是最重要的。IE注释通常被CSS新手忽略,而IE6显示透明PNG和IE6支持最小/最大宽度是难点。好吧,我想,看到这里,或许你已经学会了,或者,至少知道这是解决方法。但或许还有一句话你应该记住:少骂IE,完善自己!