zoukankan      html  css  js  c++  java
  • 关于IE浏览器文档模式

    原因

    从IE8开始,微软便开始向web标准进行靠拢,以便让各种浏览器可以更好的兼容网站中使用的代码。这样开发人员不用花太多的精力去实现不同方法在各种浏览器上的效果,用户也可以更自由选择使用自己喜欢的浏览器。

    之前的IE6和7为了实现更多的功能,代码规范与w3c的标准有许多出入,但是ie的市场占有率一直远超其他浏览器,所以绝大多数的网站开发人员都会按照ie6/7的规范来编写代码。这样,在新的ie8中,网页中就可能出现不正常的情形。

    解决办法

    为了解决这样的问题,ie8浏览器增加了一种叫做“兼容性视图”的功能,既可以让网页以ie6/7的代码规范来显示,又可以解决代码标准不一致的问题。

    兼容性视图涉及两个重要功能就是“浏览器模式”和“文档模式”。

    [详细介绍]

     在ie8或者ie9的浏览器中,打开“开发人员工具”可以看到有“浏览器模式”和“文档模式”的切换菜单。

    “浏览器模式” 用于切换IE针对该网页 的默认文档模式、对不同版本浏览器的条件备注解析、发送给网站服务器的用户代理字符串的

    网站可以根据浏览器返回的User-Agent来判断浏览器的版本和安装功能,这样就可以向不同的浏览器返回不同的页面内容。

    “文档模式”用于指定ie的页面排版引擎以哪个版本的方式来解析并渲染网页代码。

    切换文档模式 ,会导致网页被刷新,但是不会从服务器重新下载网页。

    常见问题

    在IE8浏览器中,默认使用了IE7文档模式进行了渲染,导致HTML5不能正常的显示。

    这时,需要在你的文档头部强制使用最高版本IE渲染。

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

      

    http-equiv="X-UA-Compatible"是针对IE8新加的一个设置,对于IE8之外的浏览器是不识别的。
    content="IE=edge,chrome=1" 这样写可以达到的效果是如果安装了GCF,则使用GCF来渲染页面,如果未安装GCF,则使用最高版本的IE内核进行渲染。
    至于GCF:Google Chrome Frame(谷歌内嵌浏览器框架GCF)。

  • 相关阅读:
    maven打包不执行测试用例
    maven不打包子模块资源文件
    mvn打包时添加version和profile
    eclipse控制台中文乱码解决方法
    eclipse常用插件
    Spring Boot系列之-logging
    Spring Boot系列之-profile
    Spring Boot系列之-helloword入门
    sqlite入门
    解决eclipse spring配置报错:cvc-elt.1: Cannot find the declaration of element
  • 原文地址:https://www.cnblogs.com/Imever/p/5714530.html
Copyright © 2011-2022 走看看