HTML 知识点总结01(ML发展)

249 阅读3分钟

1. Doctype的作用

  • 声明位于HTML文档中的第一行,处于标签之前。告知浏览器的解析器用什么文档标准解析这个文档,doctype不存在或者格式不正确会导致文档以兼容模式呈现。一般指定了以后会以标准模式来解析。

2. 标准模式与兼容模式的区别

  • 标准模式下(严格模式):浏览器的渲染方式和js引擎的解析方式都是以该浏览器支持的最高标准运行。[standard mode], 盒模型:遵循W3C标准,width(盒子实际宽度)=width(margin、border、padding、content),且content部分不包含其它部分

行内元素设置宽高:在IE5和IE6的兼容模式中,行内元素不可以使用CSS来设置宽高

  • 兼容模式(怪异模式):浏览器的渲染方式和js引擎的解析方式都是以该浏览器支持的最高标准运行。[quirk mode], 盒模型:在IE5和IE6的兼容模式中,盒模型使用IE模型的标准呈现,width(盒子实际宽度) = width( margin、border、padding、content) 且content部分包含了 border 和 pading。

行内元素设置宽高:在IE5和IE6的兼容模式中,行内元素可以使用CSS来设置宽高

3. HTML5只需要写<!DOCTYPE HTML>声明,而不需要引入DTD

HTML5不基于SGML,所以不需要对DTD进行引用,但是需要DOCTYPE来规范浏览器的行为,让浏览器按照它们应该的方式来运行。而HTML5以前的版本是基于SGML的,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型。

4. SGML、HTML、XML和XHTML的区别

  • SGML是标准通用标记语言,是一种定义电子文档结构和描述其内容的国际标准语言,是所有电子文档标记语言的起源,其前身是GML,(ML:即Markup language(置标语言))。
  • HTML是超文本标记语言,抽取了SGML的一个微小子集而提取出来的,其早期规范比较松散,但比较易学。主要规定怎么显示网页。
  • XML是可扩展标记语言,是未来语言的发展方向,XML和HTML最大的区别就是XML的标签是可以自己创建的,数量无限多,也是SGML的一个子集,但是使用比较严格的模式。
  • XHTML 也是现在基本上所有网页都在用的标记语言,他其实和 HTML 没什么本质的区别,标签都一样,用法也都一样,就是比 HTML 更严格,比如标签必须都用小写,标签都 必须有闭合标签等。html的扩充性不好,内容的表现跟不上时代的变化,以及因为性能的问题,官方逐渐趋于严格的模式,所以使用XML的严格规则的XHTML成了W3C计划中HTML的替代者。 HTML5约等于 HTML+ CSS3+JAVASCRIPT + API

5. DTD

  • DTD( Document Type Definition 文档类型定义)是一组机器可读的规则,它们定义 XML 或 HTML 的特定版本中所有允许元素及它们的属性和层次关系的定义。在解析网页时,浏览器将使用这些规则检查页面的有效性并且采取相应的措施。
  • DTD 是对 HTML 文档的声明,还会影响浏览器的渲染模式(工作模式)。
  • 可被成行地声明于 XML 文档中,也可作为一个外部引用。
<!-- 内部引入-->
<?xml version="1.0"?> 
<!DOCTYPE note [
  <!ELEMENT note (to,from,heading,body)>
  <!ELEMENT to      (#PCDATA)>
  <!ELEMENT from    (#PCDATA)>
  <!ELEMENT heading (#PCDATA)>
  <!ELEMENT body    (#PCDATA)>
]>
<note>
  <to>George</to>
  <from>John</from>
  <heading>Reminder</heading>
  <body>Don't forget the meeting!</body>
</note>
<!-- 外部引入-->
<!DOCTYPE 根元素 SYSTEM "文件名">