zoukankan      html  css  js  c++  java
  • HTML中doctype的作用及几种类型详解

    一、DOCTYPE标签的定义与作用

      <!DOCTYPE>是一个用于声明当前HTMl版本,用来告知web浏览器该文档使用是哪种 HTML 或者 XHTML 规范来解析页面,以便浏览器更加准确的理解页面内容,更加良好地展现内容效果!

    二、DOCTYPE标签的特点

      1.<!DOCTYPE> 标签没有结束标签;

      2.<!DOCTYPE>声明被所有主流浏览器支持;

      3.<!DOCTYPE>声明不是一个HTML标签,在HTML5中是可以不区分大小写的;

      4.<!DOCTYPE>声明必须位于HTML文档中最前面,处于<html>标签之前;

      注:HTML4.01是基于SGML(标准通用标记语言)的,需要以<!DOCTYPE>声明引用一个DTD(文档类型定义),用来保证浏览器按照DTD指定的标记规则解析网页内容!HTML5不基于SGML,所以不需要指定DTD。

    三、DOCTYPE与浏览器模式

      1.声明与否的影响

      <!DOCTYPE>声明的前面是没有任何内容的,如果有其他内容(空格除外)就会使浏览器在 IE下开启怪异模式渲染网页;如果浏览器进入怪异模式,就会按自己的方式解析渲染页面。那么,在不同的浏览器下,显示的样式效果会不一致。

      如果不写文档DOCTYPE声明,浏览器将无法获知HTML或XHTML文档的类型,也会进入怪异模式;还有在IE6以下版本永远进入怪异模式;

      但是,只要我们对文档DOCTYPE做了正确的声明,浏览器就会进入标准模式;浏览器会按照W3C的标准来解析渲染页面,那么,在所有的浏览器下,显示的样式效果会保持一致。因此, <!DOCTYPE>声明还是很有必要的。

      2.标准模式和兼容模式

      若文档为标准模式,则该文档的排版与JS运作模式都是以该浏览器支持的最高标准运行;兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。

    四、DOCTYPE常见声明类型

      HTML中<!DOCTYPE>常见声明类型共有8种,分别是html5有1种,HTML 4.01和XHTML 1.0都有3种,XHTML 1.1有1种,它们的写法如下:

      1.HTML5 <!DOCTYPE>声明——》<!doctype html>

      2.HTML 4.01和XHTML 1.0

        strict包含所有 HTML 元素和属性,但不包括展示性的和弃用的元素(比如 font)。不允许框架集(Framesets)。

        transitional该 DTD 包含所有 HTML 元素和属性,包括展示性的和弃用的元素(比如 font)。不允许框架集(Framesets)。

        framesets该 DTD 等同于 HTML 4.01 Transitional,但允许框架集内容。

      3.XHTML 1.1规定了一种声明, 等同于 XHTML 1.0 Strict,但允许添加模型。

    五、DOCTYPE对HTML标签的影响

      html版本经过了几次的升级,每次升级都会弃用一些不适用的旧标签,而增加某些新的html标签。因此,对于不同html版本的doctype文档类型声明,能合法使用的html标签也是有所不同。比如:

      <article>和<aside>标签,能在html5中能使用,而在HTML 4.01和XHTML中就不能使用;

      <center>标签,在html5和XHTML1.0版本中是不可用的,而在HTML4.01和XHTML1.1的<!DOCTYPE>声明中,只有Transitional和Frameset是可用的!由此可见,<!DOCTYPE>声明的html版本,也决定了哪些html标签可以合法使用!

    以上内容原文转自(https://www.liudaima.com/a/45.html),如有侵权,联系删除

  • 相关阅读:
    【BZOJ3533】向量集(SDOI2014)-线段树+凸壳+二分
    【BZOJ4869】相逢是问候(六省联考2017)-扩展欧拉定理+线段树
    【BZOJ4012】开店(HNOI2015)-动态点分治+set
    【BZOJ1095】捉迷藏(ZJOI2007)-动态点分治+堆
    【BZOJ2299】向量(HAOI2011)-裴蜀定理
    【BZOJ4942】整数(NOI2017)-线段树+压位
    【BZOJ3594】方伯伯的玉米田(SCOI2014)-DP+二维树状数组
    背包DP专题
    【2018.11.7】【luoguNOIp 热身赛】解题报告及总结
    【一天一DP计划】状压DP
  • 原文地址:https://www.cnblogs.com/spoem/p/13153109.html
Copyright © 2011-2022 走看看