Internet explorer 条件语句

Internet explorer 条件语句,internet-explorer,conditional,Internet Explorer,Conditional,我知道这个话题已经讨论了很长时间,但我尝试了很多建议,但没有得到任何结果。我在想我到底做错了什么 <!--[if IE]> <span class="itemt2e">Title</span> <![endif]--> <!--[if !IE]> <span class="itemt2">Title</span> <![endif]--> 它位于html的主体和头部 <style>

我知道这个话题已经讨论了很长时间,但我尝试了很多建议,但没有得到任何结果。我在想我到底做错了什么

<!--[if IE]>
<span class="itemt2e">Title</span>
<![endif]-->
<!--[if !IE]>
<span class="itemt2">Title</span>
<![endif]-->

它位于html的主体和头部

<style>
.itemt2e{font-size:14px;}
.itemt2{font-size:16px;}
</style>

.itemt2e{字体大小:14px;}
.itemt2{字体大小:16px;}
显然,如果浏览器是IE的任何版本,其目的是使字体大小为14px,而对于所有其他浏览器(firefox、chrome、safari等),其目的是使字体大小为16px。代码会显示在html中,但浏览器不会解释它,因为“Title”一词不会显示在任何浏览器中。

只显示IE(≤9) 可以理解条件注释,因此对于所有非IE浏览器,您的第二个跨度似乎位于普通注释块内

这是IE的正确条件注释:

<!--[if !IE]> -->
<span class="itemt2">Title</span>
<!-- <![endif]-->

标题
这告诉IE不要显示范围,而不是试图告诉非IE浏览器显示范围


编辑:文本没有出现在IE中,原因相同:IE10+不识别条件注释,因此它也认为跨度在注释中。

您如何测试这一点?IE10不再做条件语句了。IE10的“仿真”选项实际上并不响应IE条件语句。疯狂,我知道。测试这一点的唯一方法是在具有IE9实际版本的计算机上。哇,谢谢。那么任何大于10的版本都不会对此作出响应?我用IE11进行了测试,但firefox、chrome和safari也没有响应。所以我坚持IE对事物的解释?事实上,有条件的评论只适用于IE5到IE9。这些是唯一可以读取它们的浏览器。IE11模仿Firefox用户字符串。仍然有一些JS测试来确定您是否在IE中,以及什么版本的var isIE11=!!navigator.userAgent.match(/Trident\/7\./);是的,我认为测试用户代理可能是我现在的路线…现在有意义了。太糟糕了,因为字体在IE中显得非常大,使页面看起来有点不对劲。