开发者社区> 问答> 正文

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

a123456678 2016-03-24 15:33:07 975

用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都下载下来了,不知道大家有什么看法?

分享到
取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 19:12:51

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

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

    0 0