J. *_*ton 5 html5 internet-explorer internet-explorer-10
我已经仔细查看了stackoverflow,发现以下是强制非兼容模式的最佳推荐方法:
<meta http-equiv="X-UA-Compatible" content="IE=edge" >
Run Code Online (Sandbox Code Playgroud)
我对这些答案的问题在于它们都是IE 8和9时代的答案.
这仍然是强制用户运行的最新浏览器的方法吗?
这是一个公共站点,我们的用户经常使用IE10,IE9,IE7和IE8(大致按此顺序).
是的,IE7的使用比IE8更常见.
我对IE8唯一的限制是该网站是可读的.
它是一个现代化的网站,我希望用户不能在兼容模式下使用任何浏览器.我知道有一种方法可以指定浏览器版本,但我不想在下个月末使用Win10.
如果有人知道Windows 10将使用哪一行知道这一点非常有用(新浏览器称为"Edge").
感谢您提供的任何帮助.
-Chris C.
PS我确实有以下作为页面的第一行(没有空格):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN"
Run Code Online (Sandbox Code Playgroud)
Sam*_*son 12
我在Internet Explorer和Microsoft Edge团队工作.
你提供的是x-ua-compat标头/元标签.它被设计为一种保留式解决方案,可帮助您继续前进并采用对现代浏览器的支持,而无需立即负责现代化您的代码库.它不是一种Web兼容性的长期解决方案.
为用户提供最理想体验的最佳方式是首先使用HTML5文档类型:
<!DOCTYPE html>
Run Code Online (Sandbox Code Playgroud)
这应该是你文件中的第一件事; 什么都不应该在它之前.从那时起,单独使用有效的标记.检查文档中的错误,不平衡标签,还原标签等.请记住,定期验证您的标记.
只有在无法立即替换/删除的旧代码时才使用x-ua-compat标头/元标记.在这些情况下,允许您的用户处于遗留文档模式:
<meta http-equiv="X-UA-Compatible" content="IE=9" />
Run Code Online (Sandbox Code Playgroud)
如果模式存在,以上将使浏览器进入Internet Explorer 9的边缘模式.在9之前的Internet Explorer版本中,将使用最新的文档模式.
您也可以堆叠这些以表示支持:
<meta http-equiv="X-UA-Compatible" content="IE=10,9,7,8" />
Run Code Online (Sandbox Code Playgroud)
但请不要忘记我的主要信息 - 以上仅作为临时解决方案.最终目标是使用现代代码更新您的文档.
Internet Explorer的后继者Microsoft Edge 不支持文档模式.Microsoft Edge将像Firefox和Chrome一样解释您的文档.