在我的网站中,我有一个像这样的IE HTML条件:
<!--[if lte IE 8]>
<p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
<![endif]-->
..... the rest code of the html page
当我在IE 8中运行我的网页时,我只希望显示条件中的代码,而我不想显示网页的其余部分。
我该怎么做?
当我尝试这个时:
<!--[if gt IE 8]>
...My code
<![endif]-->
当我在firefox
或chrome
上运行我的网页时,它无效。
答案 0 :(得分:0)
我更愿意使用PHP来执行此操作:
<?php if(strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') && preg_match('/(?i)MSIE [6-8]/',$_SERVER['HTTP_USER_AGENT'])) { ?>
<p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
<?php } ?>
IE上伪造或过滤的HTTP_USER_AGENT非常不可能。
答案 1 :(得分:0)
添加连字符( - )使其成为一个下层隐藏的条件注释,使得下层浏览器(任何不支持条件注释的浏览器或浏览器版本)忽略注释块内的HTML内容 - 如果语句是真
使用下层显示的条件注释,而不是删除连字符:
<![if gt IE 8]>
...Your content
<![endif]>
https://msdn.microsoft.com/en-us/library/ms537512%28v=vs.85%29.aspx#dlrevealed