1-9. DTD文档声明

作者: 一Left一 | 来源:发表于2017-11-08 19:52 被阅读2次

    1、什么是DTD文档声明?

    • 由于HTML有很多个版本的规范, 每个版本的规范之间又有一定的差异. 所以为了让浏览器能够正确的编译/解析/渲染我们的网页, 我们需要在HTML文件的第一行告诉浏览器, 我们当前这个网页是用哪一个版本的HTML规范来编写的. 浏览器只要知道了我们是用哪一个版本的规范来编写之后, 它就能够正确的编译/解析/渲染我们的网页。

    2、DTD文档声明格式:
    <!DOCTYPE html>

    • 注意事项:
      <!DOCTYPE>声明必须是 HTML 文档的第一行,位于 <html> 标签之前
      <!DOCTYPE> 声明不是 HTML 标签
      <!DOCTYPE> 声明没有结束标签
      <!DOCTYPE> 声明对大小写不敏感
      这个声明浏览器会看, 但是并不是完全依赖于这个声明, 浏览器有一套自己的默认的处理机制
      不写也能运行
      H5网页里面用H4也能运行

    3、HTML5之前有2大种规范, 每种规范中又有3小种规范

    • 大规范 小规范
    • HTML Strict (严格的)
    • HTML Transitional(过度的,普通的,宽松的)
    • HTML Frameset(带有框架的页面)
    • XHTML Strict (严格的)
    • XHTML Transitional(过度的,普通的,宽松的)
    • XHTML Frameset(带有框架的页面)

    4、HTML的DTD文档声明和XHTML的DTD文档声明有何区别?

    • XHTML本身规定比如标签必须小写、必须严格闭合、必须使用引号引起属性等等, 而HTML会更加松散没有这么严格。

    5、Strict

    • Strict表示严格的, 这种模式里面的要求更为严格.这种严格主要体现在有一些标签不能使用
    • 例如font标签/u标签等
    • font标签可以修改一个文本的字号、颜色、字体,但这和HTML的本质有冲突,因为HTML只能负责语义,不能负责样式,而font标签是用于修改样式的,所以在Strict中是不能使用font标签
    • u标签可以给一个文本加上下划线,但这和HTML的本质有冲突,因为HTML只能负责语义,不能负责样式,而u标签是用于添加下划线是样式.所以在Strict中是不能使用u标签

    6、Transitional

    • Transitional表示普通的, 这种模式是没有一些别的要求
    • 例如可以使用font标签、u标签等
    • 但是在企业开发中不会使用这些标签,因为这违背了HTML的本质, 而是将这些标签作为css的钩子使用

    7、Frameset表示框架, 在框架的页面使用

    • 后面学到框架/NodeJS 再做详细了解

    8、常见的DOCTYPE有如下几种
    -XHTML 1.0
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    -HTML5:
    <!DOCTYPE html>
    -有这么多规范我们学习过程中到底使用哪一种比较合适呢?
    无论是HTML还是XHTML,过去企业级开发中用的比较多的大 部分都是Transitional类型的文档声明
    但是HTML5的时代已经到来,以上6中规范仅仅作为了解, 以后都用HTML5类型的文档声明, HTML5向下兼容(求此刻WC3心里阴影面积)
    目前国内一线网站都更新到了HTML5的文档声明, 所以后续授课也是全程使用HTML5的文档声明

    http://www.w3school.com.cn/tags/tag_doctype.asp

    相关文章

      网友评论

        本文标题:1-9. DTD文档声明

        本文链接:https://www.haomeiwen.com/subject/xvhymxtx.html