开发者

Not serving a CSS to IE7 & IE8

Is there an easy way to serve a whole stylesheet to every m开发者_运维百科odern Browser but IE7 and IE8? Some kind of inverted conditional comments?


The following should work per Microsoft's documentation:

<!--[if !((IE 7)|(IE 8))]><!--><link rel="stylesheet" type="text/css" href="ie.css" /><!--<![endif]-->


I don't know much about web coding... but this looks like what you are looking for.


Check out this site.

If you are simply trying to exclude browsers older than IE9, it is simpler to use

<!--[if gte IE 9]>
  <link ...
<![end if]-->

Otherwise, you will need to use other operators to fit a specific subset, as others have already provided.


The MSDN docs are very useful here: http://msdn.microsoft.com/en-us/library/ms537512(v=vs.85).aspx

Note that you can use "!" to denote "not". So you could use something like this:

<!-- [if !(IE 7) & !(IE 8)]>
<link href="modern.css" />
<![endif]-->

Pretty straight forward.

Updated Since IE's quirky conditionals don't get respected in other browsers. You could easily add jQuery to the page and do something like this:

<script src="jquery.js"></script>
<!-- add jquery first for browser sniffing -->
<script>
  // if broswer is IE and less than version 9 write out the nice CSS
  if($.browser.msie && parseInt($.browser.version) < 9){
    document.write("<link href='modern.css'/>");
  }
</script>

jQuery docs on browser sniffing: http://api.jquery.com/jQuery.browser/

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜