简体   繁体   中英

Not serving a CSS to IE7 & IE8

Is there an easy way to serve a whole stylesheet to every modern Browser but IE7 and IE8? Some kind of inverted conditional comments?

根据Microsoft的文档 ,以下内容应适用:

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

我不知道很多关于网络编码......但这个看起来你在找什么。

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/

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 technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM