• 微信号:wumiao_357234902
您当前的位置:首页>web前端开发>HTML

什么是html5?有什么用?与HTML4.01、XHTML区别

作者:Miao 阅读:2959次

HTML的全称是(Hyper Text Markup Language )即超文本标记语言,它是互联网上应用最广泛的标记语言。不要把HTML语言和Java、C等编程语言混淆起来,HTML只是一种标记语言,简单地说,HTML文件就是普通文本+HTML标记(HTML标签),和不同的标记就能表示不同的效果。

1.HTML发展历史

HTML1.0在1993年6月作为互联网工程工作小组(IETF)工作草案发布
HTML 2.01995年11月作为RFC 1866发布,在RFC 2854于2000年6月发布之后被宣布已经过时
HTML 3.21996年1月14日,W3C推荐标准
HTML 4.01997年12月18日,W3C推荐标准
HTML 4.11999年12月24日,W3C推荐标准
XHTML发布与2000年1月26日,是W3C组织推荐标准,后来经修订与2002年8月1日重新发布
HTML5第一份正式草案已于2008年1月22日公布,现仍继续完善

2.HTML4.01与XHTML

XHTML的全称是(EXtensible HyperText Markup Language,扩展的超文本标记语言),XHTML和HTML4.01具有很好的兼容性,而且XHTML是更严格、更纯净的HTML代码。HTML有很多不规范的地方,而XHTML致力于消除这种不规范,XHTML要求HTML文档首先必须是一份XML文档。XML文档是一种结构化文档,它有如下4条基本原则:

1. 整个文档有且只有一个更元素

2. 每个元素都由开始标签好结束标签组成(例如:`<a></a>`就是开始标签和结束标签),除非使用空元素语法(例如<br>就   是空元素语法)  

3. 元素与元素之间应该合理嵌套,例如`<div><span>hello word</span></div>`,可以明确地看出`<span>`元素是`<div>`元素的子元素,这就是合理的嵌套;

4. 元素的属性必须有属性值,而且属性值应该在引号(单引号或双引号都可以)引起来。


3.HTML与XHTML的文档定义类型(DTD)

从表面上看,HTML和XHTML显得杂乱无脏,但实际上W3C制定了严格的语义约束,使用了DTD(Document Type Definition,文档类型定义)来定义HTML和XHTML的语义约束。关于DTD的详细介绍可以看我的博客-->点击打开链接


4.从XHTML到HTML5

虽然W3C努力为HTML制定规范,但由于绝大部分编写HTML页面并没有受过专业训练,他们对HTML规范、XHTML规范也不怎么了解,所有他们制定的HTML网页绝大部分没有遵守HTML规范。HTML规范:

1. 元素的标签名用了大小写混乱的情况。比如:`<p>html</P>`

2. 元素没有合理结束的情况。比如:只有`<p>`开始标签,没有`</p>`结束标签

3. 元素中使用了属性,但没有指定属性的情况。比如:`<Input type="text" disabled>`

4. 为元素的属性指定属性值时没有使用引号的情况。比如:`<input type=text>`,可能是出于存在合理的考虑,WHATWG组织开始制定一种妥协式的规范:HTML5。


5.HTML优势

5.1 解决了跨浏览器问题

对于有过实际开发经验的前端程序员来说,跨浏览器问题绝对是一个永恒的噩梦:明明在一个浏览器中科院正常运行的HTML+CSS+JAVASCRIPT页面,但换一个浏览器之后,就会出现很多问题,比如:JavaScript运行出错、页面布局混乱等,因此前端程序员会先判断对方浏览器,然后根据对方浏览器编写不同的页面代码。HTML5的出现可能改变了这种局面,目前主流浏览器如Edage(Internet Explorer)、Chorme、Firefox、Safari都表现出对HTML5的极大热情。

5.2 部分代替了原来的JavaScript

HTML5增加了一些非常实用的功能,例如,打开一个页面立即让某个单行文本框获得输入焦点,在HTML5之前要通过JavaScript来实现。

图书:<input type="text" name="book" id="name"/><br/>
价格:<input type="text" name="price" id="price"/>
<script type="text/javascript">
	document.getElementById("price").focus();
</script>

在HTML5中只需要设置一个属性即可

图书:<input type=text name=book/><br/>
价格:<input type=text autofocus name=price/>

5.3 更明确的语义支持

在HTML5以前,如果要表达一个文档结构,可能只通过`<div>`元素来实现,HTML5则可以提供更明确的语义元素。

<header>.........</header>
<nav>...............</nav>
<article>
<section></section>
</article>
<aside>...............</aside>
<footer>..............</footer>

上面的页面片段就可以提供更清晰的语义了,而不是通过语义不清的 div 元素来完成布局。除此之外,以前的HTML会通过 em 元素来表示被强调的内容,但到底是哪一种强调,HTML却无法表达;HTML5则提供了更多支持语义的强调元素。

5.4 增强了WEB应用程序的功能

一直以来,HTML页面的功能被死死地限制着:客户端从服务器下载HTML页面数据,浏览器负责呈现这些HTML页面数据。出于客户机安全性的考虑,以前的HTML在安全性方面确实做得足够安全。

当做得足够安全后,就需要JavaScript等其他方式来增加HTML的功能。换句话说,HTML对WEB程序而言太单薄了,比如文件上传时想同时选择多文件都不行(前端开发者不得不通过Flash、JavaScript等各种技术来克服这个因素),为补充这种不足,HTML5规范增加了不少新的API,比如HTML5新增的本地存储API、文件访问功能,在未来的日子里,我相信使用HTML5开发WEB应用将会更加轻松。


6.HTML的基本结构和语法

首先要明确一点,HTML5并不是对HTML4、XHTML的革命,也就是说原来的HTML4开发的HTML网页同样可用;如果开发者受过严格训练,喜欢XHTML那种严格、规范、语法,同样可以按XHTML的严格要求来开发HTML5。(个人建议使用严格的语法格式)    Html5完全遵守以下3点原则:

兼容性:HTML5在老版本的浏览器也可以运行

实用性:HTML5内部并没有特别复杂的功能,它只是封装了简单功能

非革命性:HTML5并不是革命式的发展,是一种妥协式的规范

6.1 HTML5的基本结构

HTML5,只要把XHTML中的DTD声明改为<!DOCTYPE html>;HTML5支持两种方式来指定页面的字符集

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta charset=utf-8" />

6.2HTML5的语法变化

6.2.1 标签不再区分大小写

6.2.2 元素可以省略结束标签,例如:

<p>
<ol>
	<li>aaaa
	<li>bbbb
	<li>ccccc
	<img src="a.gif" alt="a"/>
</ol>

6.2.3 支持Boolean值的属性

6.2.4允许属性值不使用引号

<option value=java>Java</option>

重点:HTML5语法的改变

  • 标签不再区分大小写

  • 元素可以省略结束标签

  • 支持Boolean值的属性

  • 允许属性值不使用引号


原文作者:湮顾千古

原文链接:https://blog.csdn.net/sujin_/article/details/78520888

本站部分文章、数据、素材收集于网络,所有版权均归源网站或原作者所有!

如果侵犯了您的权益,请来信告知我们下线删除,邮箱:357234902@qq.com

标签:HTML