前端面经 <!DOCTYPE>、严格模式和混杂模式(标准模式和兼容模式);DTD、HTML5为什么不需要引入DTD;SGML、HTML、XML和XHTML

DOCTYPE、严格模式和混杂模式

< ! DOCTYPE > 声明在文档的第一行
它的作用是:告诉浏览器要以什么模式来解析文档。
包含两种模式:严格模式与混杂模式。
严格模式有时也叫标准模式,混杂模式有时也叫兼容模式。

严格模式与混杂模式:

  • 严格模式:渲染方式和JS引擎的解析方式以浏览器的最高标准执行
  • 混杂模式:向后兼容,防止浏览器无法兼容页面。

DTD(Document Type Definition)介绍

DTD,即Document Type Definition的缩写,中文是文档类型定义
定义:

  • DTD是一组机器可读的规则,是对HTML文档的声明,会影响浏览器的渲染模式
  • DTD定义了XML或HTML特定版本中的所有允许元素及它们属性和层次关系
  • 解析网页时,浏览器会使用该规则检查页面的有效性并采取一定的规则

为什么HTML5不需要引入DTD

原因:

因为HTML5不再基于SGML,所以不需要再引入DTD。只需要< !DOCTYPE >声明告诉浏览器以何种模式解析HTML文档。

SGML的相关介绍在下文。

当然,HTML4.01就都是基于SGML的,所以需要引入DTD。

从DTD的定义:DTD定义XML或HTML特定版本中的… ,我们也能发现强调的DTD适用的是HTML的特定版本。那很好理解,HTML5就不是DTD适用的HTML特定版本咯 ~ 。但最主要的原因还是HTML5不基于SGML,所以不需要引入DTD。

SGML、HTML、XML、XHTML

  • SGML - Standard Generalized Markup Language(标准通用标记语言)是一种定义电子文档结构和描述其内容的国际标准语言,是所有电子文档标记语言的起源。
  • HTML - Hyper Text Markup Language(超文本标记语言)
  • XML - Extensible Markup Language(可拓展标记语言)
  • XHTML - eXtensible HyperText Markup Language (可扩展超文本标记语言)

XML与HTML的区别

  1. XML的标签是可自己创建的;HTML的标签都是现有固定的。
  2. XML的标签数量无限多;HTML标签数量是有限的。

XHTML与HTML的区别

  1. XHTML标签必须都是小写
  2. XHTML标签都有结束标签

其实XHTML和HTML没有什么本质区别,只是写法上比HTML有更严格的要求。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Silam Lin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值