加入收藏 | 设为首页 | 会员中心 | 我要投稿 航空爱好网 (https://www.52kongjun.com/)- 自然语言处理、云硬盘、数据治理、数据工坊、存储容灾!
当前位置: 首页 > 教程 > 正文

html各个版本和doctype梳理

发布时间:2023-11-03 11:30:54 所属栏目:教程 来源:转载
导读:   Xhtml和html区别:



  ·HTML 1.0 -- 1993年6月,IETF发布



  ·HTML 2.0 -- 1995年11月,发布



  ·HTML 3.2 -- 1996年1月,W3C推荐标准

  Xhtml和html区别:
 
  ·HTML 1.0 -- 1993年6月,IETF发布
 
  ·HTML 2.0 -- 1995年11月,发布
 
  ·HTML 3.2 -- 1996年1月,W3C推荐标准
 
  ·HTML 4.0 -- 1997年12月,W3C推荐标准
 
  ·HTML 4.01 -- 1999年12月,W3C推荐标准
 
  ·HTML 5.0 -- 2008年8月,W3C工作草案
 
  HTML 2.0 是过时的 HTML 版本,大概在1996年。
 
  HTML3.2大概是在1997年那时候是一个没有style样式的年代。一些显示方式都是以属性标签,或属性来实现的。如:〈CENTER〉<color>ALIGN=CENTER等。后面的版本也遗留了一些。
 
  XHTML 是最新的HTML版本。HTML 教程
 
  但HTML 5并不是由W3C直接制定的,是不同浏览器厂商WHATWG进行制定的.
 
  W3c上的验证问题
 
  一个元素出现在比doctype声明的HTML版本更晚的规范中,就不解释呈现该元素吗?不会,当然不会!它照样会解释呈现该元素,别忘了伯斯塔尔法则,别忘了健壮性。浏览器在接收的时候必须要开放。因此,它不会检查任何格式类型,而验证器会(w3c的),验证器才关心格式类型。这才是存在doctype的真正原因。
 
  W3c标准和浏览器上显示的一些区别
 
  这也是为什么w3cshool上有些版本不支持的元素如center,font等仍然可以在xhtml 1.0 和html5 有其原有功能的原因。-----浏览器容错能力。也就是伯斯塔尔法则,又称健壮性法则,他的主要含义就是“发送时保守,接收时开放”。浏览器厂商都明白他们必须支持所有的版本,他们不会因为现在大家都用HTML4.1或者HTML5编写网站就不再支持HTML以前的版本。道理很简单,浏览器必须向后兼容。这就是浏览器“接收时开放”的精神的。
 
  发送时保守”是告诫web开发人员的,你的HTML代码应该写的尽可能符合标准,能够方便别人(浏览器)去解析,
 
  为什么要通过w3c的验证呢(很多都不通过w3c的验证)
 
  如果你在设计页面的时候按照W3C标准的话,那么恭喜你:SEO(搜索引擎优化)的工作你已经完成了一半!为什么我会这么说呢?还有一半工作在哪呢?看了这篇文章以后你会不会按照W3C标准重构你的网站呢?且看我下面的观点。
 
  XHTML
 
  XHTML 1.0 使用 XML 对 HTML 4.01 进行了重新地表示。
 
  作为一项 W3C 推荐,XHTML 1.0 发布于 2000 年 1 月 20 日。
 
  Xhtml是以xml 为基础引入的具有良好编排行的新概念。是更为严格,更为纯净的html;
 
  Xhtml区别1:大小写严格区分。Xhtml 元素名和属性必须小写。
 
                      2.对非空元素必须闭合标签空标签像<br>.<img>  应该写为<br/>,<img/>
 
                      3.属性引号不能省略
 
  W3C 的标准化程序分为 7 个不同的步骤。
 
  样式表可描述文档如何被显示、发音或打印  4.
 
  大牛解释
 
  XHTML 1.0与HTML4.01其实是一样的。我的意思是说,从字面上看这两个规范的内容是一样的,词汇表是一样的,所有的元素是一样,所有的属性也都是一样的。唯一一点不同之处,就是XHTML1.0要求使用XML语法。也就是说,所有属性都必须使用小写字母,所有元素也必须使用小写字母,所有属性值都必须加引号,你还得记着使用结束标签,记着对img和br要使用自结束标签。
 
  XHTML     产生的原因
 
  1.html的语法要求比较松散,对于网页编写者来说比较方便,但是对于机器来说就比较麻烦,对于传统的计算机来说,还有能力兼容松散语法,但对于许多其他设备,如手机,难度就比较大,因此产生了DTD定义规则,语法要求更加严格的xhtml。
 
  2.xhtml的目标是取代html,xhtml是更严格更纯净的html版本,它与html4.01几乎是相同的。
 
  http://baike.soso.com/v8351954.htm#para3
 
  XML 会被用来描述和存储数据,而HTML 会被用来显示数据。
 
  W3c有了xhtml为什么还要发展html5呢??
 
  对XHTML1.1来说,唯一的变化是你必须把自己的文档标记为XML文档。把文档标记为XML后,Internet Explorer不能处理。当然,IE9是可以处理了,所以说XHTML 1.1有点脱离现实。
 
  这也就有了后面浏览器厂商和w3c对于html发展产生了分歧。W3c主站继续xhtml方向扩展。最终浏览器厂商则自己来弄html扩展,也就是现在html5;不过后来w3c和浏览器厂商又同意一起来参与了html5扩展。
 
  HTML5
 
  HTML 5的另一个设计原理,它必须向前向后兼容,兼容未来的HTML版本
 
  HTML 5增加了更多样化的API,提供了嵌入音频、视频、图片的函数、客户端数据存储,以及交互式文档。其他特性包括新的页面元素,比如 <header>, <section>, <footer>,以及 <figure>。
 
  一些新的元素和属性,反映典型的现代用法网站。其中有些是技术上类似<div>和<span>标签,但有一个含义,例如<nav>(网站导航块)和<footer>。这种标签将有利於搜索引擎的索引整理、小萤幕装置和视障人士使用。同时为其他浏览要素提供了新的功能,通过一个标准介面,如<audio>和<video>标记。
 
    一些过时的HTML 4标记将取消。其中包括纯粹显示效果的标记,如<font>和<center>,因为它们已经被CSS取代。
 
  Html5:支持已有的内容。(对浏览器而言,必须支持他们以前其他版本的要求。)。所以它对标签的大小写又不区分了。(用惯xhtml可能会不太习惯)
 
  1.<imgsrc="foo"alt="bar"/>
 
  2.<pclass="foo">Hello world</p>
 
  3.<imgsrc="foo"alt="bar">
 
  4.<pclass="foo">Hello world  
 
  5.<IMGSRC="foo"ALT="bar">
 
  6.<PCLASS="foo">Hello world</P>
 
  7.<imgsrc=fooalt=bar>
 
  8.<pclass=foo>Hello world</p>
 
  这几种语法在html5中都是没问题的
 
  Doctype
 
  Doctype定义了您正在使用的 HTML 版本。各个版本的doctype定义
 
  <!DOCTYPE> 声明对大小写不敏感。
 
  ???为什么不支持的模式下如strickt ,frameset照常可以使用
 
  HTML 4.01 Strict, Transitional, Frameset
 
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
 
  "http://www.w3.org/TR/html4/strict.dtd">
 
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
 
  "http://www.w3.org/TR/html4/loose.dtd">
 
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
 
  "http://www.w3.org/TR/html4/frameset.dtd">
 
  XHTML 1.0 Strict, Transitional, Frameset
 
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
 
  XHTML 1.1 DTD
 
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
 
  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
 
  Strict, Transitional,frameset(三者之间的区别。)
 
  Html strict,xhtml strict 严格模式该 DTD 包含所有 HTML 元素和属性,但不包括展示性的和弃用的元素(比如 font,center)。不允许框架集(Framesets)
 
  Html transitional,xhtml transtional过度模式包括展示性的和弃用的元素(比如 font)。不允许框架集(Framesets)
 
  Frameset该 DTD 包含所有 HTML 元素和属性,包括展示性的和弃用的元素(比如 font)。包括展示性的和弃用的元素(比如 font)。允许框架集(Framesets)
 
  但是大部分主流的浏览器都会容许某些的错误,这里的strict下不支持font是指不能通过w3c的验证,并可以成功显示出网页,即使网页的结构是不正确的。
 
  XHTML 1.1该 DTD 等同于 XHTML 1.0Strict,但允许添加模型(例如提供对东亚语系的 ruby 支持)。
 
  Html4.01是标准模式,而html5   doctype是准标准模式
 
  如果没有DOCTYPE,浏览器会进入一种被称为Quirks模式的怪异状态,在该模式下,浏览器的盒模型、样式解析、布局等都与标准规定的存在差异。浏览器就会进入Quirks怪异模式
 
  随着HTML5的逐渐流行,很多网站都用上了HTML5规范来编写HTML代码,HTML5的HEAD区的写法跟XTHML有一些差别,下面就用对照的方法写出两者的差别,希望能对同学们编写HTML5代码起到帮助作用。
 

(编辑:航空爱好网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章