X-UA-Compatible是神马?

文档: https://www.modern.ie/en-us/performance/how-to-use-x-ua-compatible

X-UA-Compatible是IE8的一个专有<meta>属性,它告诉IE8采用何种IE版本去渲染网页,在html的<head>标签中使用。可以在微软官方文档获取更多介绍。

为什么要用X-UA-Compatible?

在IE8刚推出的时候,很多网页由于重构的问题,无法适应较高级的浏览器,所以使用X-UA-Compatible标签强制IE8采用低版本方式渲染。

使用下面这段代码后,开发者无需考虑网页是否兼容IE8浏览器,只要确保网页在IE6、IE7下的表现就可以了。

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
//emulate 仿真

给网站添加X-UA-Compatible标签

我建议使用下面的X-UA-Compatible标签:

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
IE=edge告诉IE使用最新的引擎渲染网页,chrome=1则可以激活Chrome Frame



为了不掩盖重点,直接看
2,问:X-UA-Compatible设为IE=edge是不是等同于不设置?
既然IE=edge是“以最高级别的可用模式显示内容”,那是不是和去掉相同的效果?

答:不一样。
有些因素会自动触发兼容性文档视图,这个时候设置X-UA-Compatible就可以防止这个自动触发的行为。
默认行为大致有这些:
  存在于注册表中的兼容性视图列表,当url匹配时将自动切换到兼容性视图
  在注册表中的对应字段指定了使用兼容性视图来显示所有网站
  未指定DOCTYPE,则使用Quirks模式
  曾经遇到过错误

一个有意思的事实是,设置了<meta http-equiv="X-UA-Compatible" content="IE=edge">之后,即使未声明doctype,在IE8、IE9(未测试IE10+,不过行为应该类似)下面,页面也不会进入quirks模式。

ref: http://msdn.microsoft.com/zh-cn/library/cc288325




使用 X-UA-Compatible 标头可指定页面支持的 Internet Explorer 版本。 使用 document.documentMode 可确定网页的兼容性模式。





<meta http-equiv="X-UA-Compatible" content="IE=5" />
像是使用了 Windows Internet Explorer 7 的 Quirks 模式,这与 Windows Internet Explorer 5 显示内容的方式很相似。

<meta http-equiv="X-UA-Compatible" content="IE=7" />
无论页面是否包含 <!DOCTYPE> 指令,均使用 Windows Internet Explorer 7 的标准渲染模式。

<meta http-equiv="X-UA-Compatible" content="IE=8" />
开启 IE8 的标准渲染模式,但由于本身 X-UA-Compatible 文件头仅支持 IE8 以上版本,因此等同于冗余代码。

<meta http-equiv="X-UA-Compatible" content="edge" />
Edge 模式通知 Windows Internet Explorer 以最高级别的可用模式显示内容,这实际上破坏了“锁定”模式。

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
EmulateIE7 模式通知 Windows Internet Explorer 使用 <!DOCTYPE> 指令确定如何呈现内容。标准模式指令以Windows Internet Explorer 7 标准模式显示,而 Quirks 模式指令以 IE5 模式显示。与 IE7 模式不同,EmulateIE7 模式遵循 <!DOCTYPE> 指令。对于多数网站来说,它是首选的兼容性模式。
在现阶段,IE8 版本推向市场没有多久,份额不高。因此,考虑兼容旧版本的模式值得推荐。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: http-equiv="x-ua-compatible"是HTML中的一个元标记,用于指定浏览器的文档模式。它告诉浏览器使用哪个版本的HTML解析器来渲染页面,以确保页面在不同的浏览器中具有一致的外观和行为。 ### 回答2: http-equiv="x-ua-compatible" 是一种 HTML 元素属性,它被用于设定当前网页在某个特定的浏览器或浏览器模式下的渲染方式。通常这个属性是用在 HTML 的 head 标签里面,例如:<head><meta http-equiv="x-ua-compatible" content="ie=edge"></head>。 该属性的主要作用是让网页能兼容旧版的 Internet Explorer 浏览器。由于 IE 浏览器在不同版本之间存在差异,很多网页在新版浏览器下展示正常,但在 IE 旧版浏览器下则存在显示问题或兼容性问题。为了解决这些问题,就需要用到该属性。 该属性通常指定的值为"ie=edge"表示让浏览器使用最新版本的 IE 渲染网页,也可以指定特定版本的 IE。例如:<meta http-equiv="x-ua-compatible" content="ie=9"> 意味着让 IE 9 版本渲染网页。 需要注意的是,使用该属性并不能保证完全解决兼容性问题,有时需要通过修改网页代码来达到最佳效果。此外,Chrome 和 Firefox 等现代浏览器对该属性的支持已经相对较弱,可能会导致不可预测的结果,建议谨慎使用。 总之,http-equiv="x-ua-compatible" 属性是一种让网页在特定浏览器或浏览器模式下的渲染方式,主要是用来解决旧版 IE 下的兼容性问题,但并不是万能的解决方案。 ### 回答3: http-equiv="x-ua-compatible"是一种用于在网页中声明文档渲染模式的HTML元素。它可以指定浏览器使用哪个版本的HTML解释器来渲染网页并确保网页呈现出预期的效果。 这个元素在当今的Web开发中非常重要,因为不同版本的浏览器使用不同的HTML解释器,导致同一网页在不同浏览器中呈现的效果可能会有所不同。此时,我们可以通过设置http-equiv="x-ua-compatible"元素,告诉浏览器使用特定的HTML版本,以确保网页以最佳的方式呈现。 在设置http-equiv="x-ua-compatible"元素时,可以使用不同的属性值。比如,设置为IE=edge表示要在IE最新的文档模式下渲染网页。而设置为IE=EmulateIE9表示要模拟IE9的行为方式,即使用IE9文档模式来渲染网页。 总之,使用http-equiv="x-ua-compatible"元素可以帮助我们避免浏览器兼容性问题,并且确保网页在不同浏览器中呈现一致的效果。因此,在Web开发中,我们务必要重视这个元素的作用,以确保网页的质量和用户体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值