问题
I have the following in my html document.
<!--[if (IE)]><!--> i am IE <!--<![endif]-->
<!--[if !(IE)]><!--> i am not ie <!--<![endif]-->
When viewed in IE it properly says "i am IE"
When viewed in Chrome/Firefox it incorrectly says "i am IE i am not ie" instead of "i am not IE"
http://jsfiddle.net/Hgx97/
回答1:
You're incorrectly terminating the IE conditional comments on the first line, so other browsers will see the content between the delimiters (you can also see how the text is highlighted black on the first line, which is not what you want):
<!--[if (IE)]> i am IE <![endif]-->
<!--[if !(IE)]><!--> i am not ie <!--<![endif]-->
The second line is correct since you want to show that content to non-IE browsers.
Updated fiddle
回答2:
should've used
<!--[if IE]>i am IE<![endif]-->
<![if !(IE)]>i am not ie<![endif]>
reference : about usage of conditional statement,
view #example part if you want to know more
来源:https://stackoverflow.com/questions/19805189/html-ie-conditional-statement-not-working-with-chrome-firefox