zoukankan      html  css  js  c++  java
  • Doctype作用?标准模式与兼容模式各有什么区别?

    Doctype作用?标准模式与兼容模式各有什么区别?
      DOCTYPE是document type(文档类型)的简写,用来告诉浏览器的解析器使用哪种HTML或XHTML规范解析页面。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现。

    知道多少种文档类型

      HTML 4.01和XHTML 1.0规定了三种文档类型:Strict(严格)、Transitional(过渡)以及Frameset(基于框架)。

     

    为什么HTML5只要写<!DOCTYPE HTML>

    HTML 4.01 基于 SGML,需要对 DTD 进行引用,才能告知浏览器文档所使用的文档类型 。
    HTML 5 不基于 SGML,因此不需要对 DTD 进行引用,但是需要 doctype 来规范浏览器的行为。
    SGML是标准通用标记语言,简单的说,就是比HTML,XML更老的标准,这两者都是由SGML发展而来的。但是,HTML5不是的。

    标准模式与兼容模式(怪异模式)各有什么区别?

     Standards(标准)模式(也就是严格呈现模式)用于呈现遵循最新标准的网页,而Quirks(兼容)模式(也就是松散呈现模式或者怪异模式)用于呈现为传统浏览器而设计的网页。

    标准模式的排版 和JS运作模式都是以该浏览器支持的最高标准运行。
    兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。简单说就是尽可能的显示能显示的东西给用户看。

    具体区别:
    1.盒模型
      在严格模式中 :width是内容宽度 ,元素真正的宽度 = width;
      在兼容模式中 :width则是=width+padding+border

    2.兼容模式下可设置百分比的高度和行内元素的高宽
        在Standards模式下,给span等行内元素设置wdith和height都不会生效,而在兼容模式下,则会生效。
        在standards模式下,一个元素的高度是由其包含的内容来决定的,如果父元素没有设置高度,子元素设置一个百分比的高度是无效的。

    3.用margin:0 auto设置水平居中在IE下会失效
        使用margin:0 auto在standards模式下可以使元素水平居中,但在兼容模式下却会失效(用text-align属性解决)
        body{text-align:center};#content{text-align:left}

    4.兼容模式下Table中的字体属性不能继承上层的设置,white-space:pre会失效,设置图片的padding会失效

  • 相关阅读:
    [转]ROS学习笔记十一:ROS中数据的记录与重放
    [转]百度Appollo无人车Perception Module 分析
    百度 Apollo无人车平台增加传感器
    [转]Ubuntu16.04安装搜狗输入法
    [转]Ubuntu16 压缩解压文件命令
    Baidu Apollo use: command " rosbag " not fonud
    nvidia-smi command not found Ubuntu 16.04
    启动Turtlesim,输入roscore命令,报错
    Linux系统下安装Nginx
    linux重启后JDk环境变量配置失效最终解决方案
  • 原文地址:https://www.cnblogs.com/coldfishdt/p/6533120.html
Copyright © 2011-2022 走看看