通过meta设置多内核浏览器使用webkit内核解析<meta http-equiv = "X-UA-Compatible" content = "IE=edge(
Posted 小白撸代码
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过meta设置多内核浏览器使用webkit内核解析<meta http-equiv = "X-UA-Compatible" content = "IE=edge(相关的知识,希望对你有一定的参考价值。
国产浏览器大多是双内核,甚至是三内核。
一个Chromium内核,也就是Chrome使用的内核,切换到这个内核的模式一般叫极速模式;
一个IE内核,称之为IE模式;有的甚至还有一个修改过的IE内核,称之为兼容模式。
这些浏览器这样做的原因是国内还有大量为IE浏览器量身定做的网站,为了兼容这些网站,不默认启用极速模式,而是根据代码判断选择IE模式或者兼容模式或者极速模式。
如果依靠浏览器自动选择经常判断错误,导致本来使用Webkit可以获得更好浏览效果的网站错误在IE模式中带着BUG运行。让开发者头疼。
幸好,现在多核浏览器已经支持通过meta标签指定浏览模式,我们就可以通过meta代码强制浏览器启用Chromium内核,为用户提供最好的使用体验。
强制启用webkit内核代码如下
<meta name="renderer" content="webkit"/> <meta name="force-rendering" content="webkit"/> <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1"/>
如果单独只加 <meta name="renderer" content="webkit"/>这一行代码会导致不起作用。
以上三行代码其作用如下
<!-- 强制Chromium内核,作用于360浏览器、QQ浏览器等国产双核浏览器 --> <meta name="renderer" content="webkit"/> <!-- 强制Chromium内核,作用于其他双核浏览器 --> <meta name="force-rendering" content="webkit"/> <!-- 如果有安装 Google Chrome Frame 插件则强制为Chromium内核,否则强制本机支持的最高版本IE内核,作用于IE浏览器 --> <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1"/>
低版本IE浏览器访问问题
添加好强制Webkit内核的代码,使用国产浏览器访问网站已经不存在IE兼容问题了,IE访客量将大大减少。但仍然不可避免会有一些老旧电脑通过低版本IE浏览器访问
如何解决低版本IE问题,方法如下,添加低版本IE提示升级
强制Webkit内核和提示低版本IE访问用户升级完整代码如下所示,把这段代码添加到头部模板文件<head>
标签下即可:
<meta name="renderer" content="webkit"/> <meta name="force-rendering" content="webkit"/> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/> <script>/*@cc_on window.location.href="http://support.dmeng.net/upgrade-your-browser.html?referrer="+encodeURIComponent(window.location.href); @*/</script>
@cc_on 是 IE10 及更旧版IE特有的条件编译语句,因此可以用来判断是否除 IE11 以外的其他IE版本。
添加了上面这段代码,当低版本IE用户访问时就会跳转到升级提示页,避免不必要的资源加载,降低网站服务器开销。
<meta http-equiv = "X-UA-Compatible" content = "IE=edge,chrome=1" />作用
<meta http-equiv="X-UA-Compatible" content="IE=7"> // 以上代码告诉IE浏览器,无论是否用DTD声明文档标准,IE8/9都会以IE7引擎来渲染页面。 <meta http-equiv="X-UA-Compatible" content="IE=8"> // 以上代码告诉IE浏览器,IE8/9都会以IE8引擎来渲染页面。 <meta http-equiv="X-UA-Compatible" content="IE=edge"> // 以上代码告诉IE浏览器,IE8/9及以后的版本都会以最高版本IE来渲染页面。 <meta http-equiv="X-UA-Compatible" content="IE=7,IE=9"> <meta http-equiv="X-UA-Compatible" content="IE=7,9"> <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1"> // 以上代码IE=edge告诉IE使用最新的引擎渲染网页,chrome=1则可以激活Chrome Frame.
以上是关于通过meta设置多内核浏览器使用webkit内核解析<meta http-equiv = "X-UA-Compatible" content = "IE=edge(的主要内容,如果未能解决你的问题,请参考以下文章