不同版本IE下的CSS样式调用


用CSS HACK来解决问题一直是被大家所不推荐的。
在不可避免的解决IE各版本问题时,有些同学就开始推荐用IE版本判断语句来修复IE下的CSS问题
昨天在看Frameless的时候,恰巧看到注释里有这篇文章:

Conditional stylesheets vs CSS hacks? Answer: Neither!
http://paulirish.com/2008/conditional...

作者不推荐使用IE版本判断调用CSS文件,也不推荐CSS HACK,而是通过IE版本判断而给予html添加class样式,虽然作者列举了好几条好处,但我觉得,这样会导致浏览器加载一些无法使用到的CSS文件。比如原先通过:

<link rel="stylesheet" type="text/css" media="screen" href="css/style.css" />
  <!--[if IE 7]><link rel="stylesheet" type="text/css" media="screen" href="css/ie7.css"  />< ![endif]-->
  <!--[if IE 6]><link rel="stylesheet" type="text/css" media="screen" href="css/ie6.css"  />< ![endif]-->

那么不符合版本的浏览器就不会加载与其无关的CSS文件,而作者的这种方法却将所有的CSS都下载下来了,不知道大家有什么看法?

hack css internet-explorer

豪哥仔86 10 years, 10 months ago

他这种就是文中提到的Modernizr所使用的。

就我个人来看
1.如果css不多,我会直接使用css hack
2.如果兼容性问题比较严重,我会使用IE版本判断
3.如果要同时要兼容PC、Mobile,我会使用Modernizr

玛丽坦·库鲁斯 answered 10 years, 10 months ago

Your Answer