多年来,微软Internet Explorer浏览器的老旧版本给网站设计人员和开发人员带来了麻烦。需要创建CSS文件来专门解决那些旧的IE版本,这是很多长期网站设计人员都能记住的。值得庆幸的是,IE的新版本以及微软的最新浏览器Edge更符合Web标准,并且由于那些较新的Microsoft浏览器在自动更新到最新版本的方式上是“常青树”,因此不太可能我们将以过去的方式与这个平台的陈旧版本斗争。
对于大多数网站设计师来说,微软的浏览器进步意味着我们不再需要处理旧IE版本过去给我们带来的挑战。然而,我们中的一些人并不是那么幸运。如果您的网站仍然包含来自较旧IE版本的大量访问者,或者您正在处理内部资源(如Intranet),对于因某些原因使用这些旧版IE之一的公司,那么您将需要继续测试这些浏览器,即使它已过时。一种方法是使用X-UA兼容模式。
X-UA-Compatible是一种文档模式元标记,允许Web作者选择应该呈现页面的Internet Explorer版本。Internet Explorer 8使用它来指定页面是应呈现为IE 7(兼容性视图)还是IE 8(标准视图)。
请注意,对于Internet Explorer 11,已弃用文档模式 - 不再使用它们。IE11已更新对导致旧网站问题的Web标准的支持。
为此,您需要在标记的内容中指定要使用的用户代理和版本:
“IE = EmulateIE7”
您对内容的选项是:
“IE = 5”
“IE = EmulateIE7”
“IE = 7”
“IE = EmulateIE8”
“IE = 8”
“IE = EmulateIE9”
“IE = 9”
“IE =edge”
模拟版本会告诉浏览器使用DOCTYPE来确定如何呈现内容。没有DOCTYPE的页面将以怪癖模式呈现。
如果你告诉它使用浏览器版本而不进行模拟(即,
“IE = 7”
)浏览器将以标准模式呈现页面,无论是否有DOCTYPE声明。
“IE =edge”
告诉Internet Explorer使用该版本IE可用的最高模式。Internet Explorer 8最多可支持IE8模式,IE9可支持IE9模式等。
X-UA兼容元标签类型:
X-UA兼容的元标记是http-equiv元标记。
X-UA兼容的元标记格式:
<meta http-equiv =“X-UA-Compatible”content =“IE = EmulateIE7”>
<meta http-equiv =“X-UA-Compatible”content =“IE = 8”>
<meta http-equiv =“X-UA-Compatible”content =“IE = 5”>
X-UA兼容的元标记推荐用途:
在网页上使用X-UA兼容的元标记,您怀疑Internet Explorer 8将尝试以错误的视图呈现页面。例如,当您拥有带有XML声明的XHTML文档时。文档顶部的XML声明会将页面抛出到兼容性视图中,但DOCTYPE声明应强制它在标准视图中呈现。
你永远不会知道你的网站是不是要在IE 6上工作。仍然有公司强迫员工使用非常非常旧的浏览器版本,以便继续使用很久以前为这些特定浏览器开发的专有遗留软件。对于我们这些网络行业的人来说,使用像这样的浏览器的想法似乎很疯狂,但想象一下,制造公司使用几十年前的程序来管理他们车间的库存。是的,有一些现代化的平台可以做到这一点,但他们是否投资了其中一个平台?如果他们当前的系统没有被破坏,他们为什么要改变它呢?在许多情况下,他们不会,你会发现这家公司强迫员工使用该软件,古董浏览器肯定会运行它。不可能?也许,但它肯定是可能的。如果您遇到这样的问题,能够在这些较旧的文档模式下运行网站可能最终正是您所需要的。