如何在IE HTML条件中创建“else”?

时间:2011-07-19 03:47:46

标签: javascript html css internet-explorer-9

<!--[if lt IE 9]>
    This is less then IE9
ELSE
    this is all browsers: firefox, chrome, etc.
<![endif]-->

我如何在HTML中执行此操作?我想做一个“别的”......

7 个答案:

答案 0 :(得分:108)

你不是在找别的,你正在寻找<![if !IE]> <something or other> <!--[endif]>(请注意,这不是评论)。

<!--[if IE]>
   You're using IE!
<![endif]-->
<![if !IE]>
   You're using something else!
<![endif]>

您可以找到有关条件评论here的文档。

答案 1 :(得分:43)

我使用以下内容在IE9或更新版本和所有其他浏览器中加载资源

<!--[if gte IE 9]><!-->        
    //your style or script
<!--<![endif]-->

这很难相信。查看开始和结束if语句部分是否在注释内(因此,它对其他浏览器不可见)但对IE可见。

答案 2 :(得分:12)

您的问题的解决方案是(请注意使用<!-- -->):

<!--[if lt IE 9]>
  This is less then IE9
<![endif]-->
<!--[if gt IE 8]> <!-- -->
  this is all browsers: IE9 or higher, firefox, chrome, etc.
<!-- <![endif]-->

答案 3 :(得分:8)

条件注释可以在脚本中以及在html中 -

/*@cc_on
@if(@_jscript_version> 5.5){
    navigator.IEmod= document.documentMode? document.documentMode:
    window.XMLHttpRequest? 7: 6;

}
@else{
    alert('your '+navigator.appName+' is older than dirt.');
}
@end
@*/

答案 4 :(得分:3)

您无需执行else暗示。所以

// put your other stylesheets here

<!--[if lt IE 9]>
    //put your stylesheet here for less than ie9
<![endif]-->

答案 5 :(得分:2)

@cwallenpoole接受的答案打破了标记,使HTML无效,并打破了Visual Studio的语法高亮。

以下是如何保持清洁:

<!--[if IE]>
    You're using IE!
<![endif]-->
<!--[if !IE]><!-->
    You're not using IE. See, even SO highlights this correctly.
<!--<![endif]-->

答案 6 :(得分:0)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html dir="ltr" lang="en-US" xmlns="http://www.w3.org/1999/xhtml">

<head>
 <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9">
</head>
 <!--[if IE]>
<body style="margin: 38px 0 0 0;">
 <![endif]-->
 <!--[if !IE]>
<body>
 <![endif]-->

  -Content-

 </body>
</html>
经过几个小时的搜索,这对我有用。我需要一个弹出式横幅的头部空间,IE浏览器并不想制作动画。它应该在几秒钟后隐藏起来。使用这个,我只能将整个页面移动到足够的位置,但仅限于IE,这正是我所需要的!

目前仅限仍在使用IE的用户,我自己更喜欢FireFox或Chrome。

感谢您按此特定顺序填写这些字母/符号!