html - IE10正在读取IE8条件注释

标签 html internet-explorer internet-explorer-10 meta conditional-comments

如果您使用的是不受支持的浏览器 IE<=8,我有一个网站页面会显示一个警告框。这在 IE 8 及以下版本中运行良好,但今天我在 IE 10 中进行测试,它似乎也读取了这个条件。它在不应该的时候显示警告框。我尝试了很多东西,但我不知道可能是什么问题。以下是部分代码:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0" />
  <meta http-equiv="X-UA-Compatible" content="chrome=1"/>
  <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
 ...
</head>
<!--[if lte IE 8]>
    <div style="position:absolute;bottom:0px;left:0px;background-color:orange;color:white;z-index:1000;width:250px;text-align:center;">This content is best viewed in Chrome, Firefox or any other Modern Browser. <br/><strong>Please Upgrade.  </strong></div>
<![endif]-->

最佳答案

在黑暗中刺探,但也许 IE 对您的两个 X-UA-Compatible header 感到困惑,因此会自行回退到兼容性 View 。这是我能想到的 IE10 处理条件注释而不是完全忽略它们的唯一情况,因为在兼容性 View 中它模拟 IE7,即 lte IE 8因此会选取被该条件注释隐藏的内容。

看看如果将它们组合成单个 <meta> 会发生什么标签:

  <meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1" />

关于html - IE10正在读取IE8条件注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18621327/

相关文章:

html - 从文本末尾到 block 末尾高度中间的线

javascript - 在 IE 中将表解析为数组对象的有效方法

html - Chrome 在 css 中重新调整图片大小。即没有。(关于ff的idk)

internet-explorer - 在 IE8 中使用 angularJS 在 compileNodes 中进行无限递归

javascript - IE10 插入空白文本 DOM 条目

css - 在 IE10 中具有最大高度的 flexbox

python - 将 Pandas 数据框传递给 Django 模板

java - 当没有使用radioGroup时如何取消选择zk中的单选按钮

testing - Browserstack Win7 IE10 无法播放 HTML5 视频

java - html 使用 switch() JS 以相同的形式绘制提交表单