二者的区别包括以下几个方面:
1.语法的改变;
2.新增和废除的元素;
3.新增和废除的属性;
4.全局属性。
--------------------------------------------
一、语法的改变
1.HTML5中的标记方法
1)内容类型(ContentType)
HTML5的文件扩展符与内容类型都不变,即扩展符仍然为.html或者.htm,内容类型仍然为“text/html”;
2)DOCTYPE声明
HTML5中的DOCTYPE声明方法(不区分大小写,不区分引号是单引号还是双引号)如下:
<!DOCTYPE html>
3)指定字符编码
在HTML4中,使用meta元素的形式指定文件中的字符编码,如下:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
在HTML5中,可以使用对<meta>元素追加charset属性的方式来指定字符编码,如下:
<meta charset="UTF-8">
-----------------------------------------------
需要注意的是:两种方法单独使用都有效,但是不能同时混合使用两种方法。从HTML5开始,对于文件的字符编码推荐是UTF-8.
2.HTML5确保了与之前版本的兼容性
1)可以省略标记的元素
在HTML5中,元素的标记可以省略。可分为“不允许写结束标记”,“可以省略结束标记”和“开始标记和结束标记全部可以省略”三种类型。
a)不允许写结束标记的元素,格式为<元素/>
area,base,br,col,command,embed,hr,img,input,keygen,link,meta,paran,source,track,wbr
b)可以省略结束标记的元素
li,dt,dd,p,rt,rp,optgroup,option,colgroup,thead,tbody,tfoot,tr,td,th
c)可以省略全部标记的元素有
html,head,body,colgroup,tbody
不允许写结束标记的元素是指:不允许使用开始标记与结束标记将元素括起来的形式,只允许使用<元素/>的形式进行书写。
可以省略全部标记的元素是指:该元素可以完全被省略。虽然标记被省略了,但该元素还是以隐式的方式存在。可以使用document进行访问。
2)具有boolean值的属性
见示例代码:
<!-- 只写属性不写属性值代表属性为true -->
<input type="checkbox" checked>
<!-- 不写属性代表属性为false -->
<input type="checkbox">
<!-- 属性值=属性名,代表属性为true -->
<input type="checkbox" checked="checked“>
<!-- 属性值=空字符串,代表属性为true -->
<input type="checkbox" checked="">
3)省略引号
在HTML5中,当属性值不包括空字符串,”<“,">","=",单引号,双引号等字符时,属性值两边的引号可以省略。示例代码如下:
<!-- 请注意type的属性值两边的引号,单引号,双引号-->
<input type="text">
<input type='text'>
<input type=text>
4)标记示例:
<!DOCTYPE html>
<meta charset="UTF-8">
<title>HTML5标记示例</title>
<p>这段代码是根据HTML5
<br/>编写出来的
在火狐浏览器上预览结果如下:
二、新增和废除的元素
1.新增结构元素
- article 元素表示页面中的一个内容区块,如章节,页眉,页脚或者页面中的其他部分。可以与h1,h2,h3,h4,h5,h6等元素结合起来使用,标示文档结构。示例:<section>...</section>在html4中对应的是<div>...</div>
- aside 元素表示article元素的内容之外的、与article元素的内容相关的辅助信息。示例:<aside>...</aside>在html4中对应的是<div>...</div>
- header元素表示页面中一个内容区块或整个页面的标题。示例:<header>...</header>在html4中对应的是<div>...</div>
- hgroup元素用于对整个页面或页面中一个内容区块的标题进行组合。示例:<hgroup>...</hgroup>在html4中对应的是<div>...</div>
- footer 元素表示整个页面或者页面中一个内容区块的脚注。比如创作者的姓名,创建日期,联系方式等。示例:<footer></footer>在html4中对应的是<div>...</div>
- nav 元素表示页面中导航链接的部分。示例:<nav>...</nav>在html4中对应的是<ul>...</ul>
- figure 元素表示一段独立的流内容,一般表示文档主题流内容中的一个独立单元。使用figcaption元素为figure元素组添加标题。示例:HTML5中,<figure><figcaption>PRC</figcaption><p>The Republilc of China was born in 1949 ...</p></figure>.对应到HTML4中,<dl><h1>PRC</h1><p>The Republilc of China was born in 1949 ...</p></dl>
2.新增的其他元素
- video元素定义视频,比如电影片段或其他视频流, 等同于html4的object元素 HTML5:<video src="movie.ogg" controls="controls">video元素</video> HTML4:<object type="video/ogg" data="movie.ogv"><param name="src" value="movie.ogv"></object>
-
audio元素定义音频,比如音乐或其他音频流 等同于html4的object元素.HTML5:<audio src="someaudio.wav"> audio 标签</audio>
HTML4:<object type="application/ogg" data="someaudio.wav"><param name="src" value="someaudio.wav"></object> -
embed元素用来插入各种多媒体,格式可以是Midi、Wav、AIFF、AU、MP3 等同于html4的object元素HTML5: <embed src="horse.wav" />
HTML4: <object data="flash.swf" type="application/x-shockwave-flash"></object> -
mark元素主要用来在视觉上向用户那些需要突出显示或者高亮显示的文字 等同于html4的span元素HTML5: <mark></mark>
HTML4: <span></span> - progress元素表示运行中的进程,可以使用progress来显示JavaScript中消耗时间的函数的进程 html4中无法实现HTML5: <progress></progress> HTML4: none
- meter元素表示度量衡。仅用于已知最大值和最小值的度量。必须定义度量的范围,可以在元素的文本中。也可以在min/max属性中定义 html4无法实现 HTML5: <meter></meter> HTML4: none
-
time元素 表示日期或者时间,也可以同时表示两者 等同于html4的span元素 HTML5: <time></time>
HTML4: <span></span> -
ruby元素表示ruby注释 rt元素表示字符的解释或发音 rp元素在ruby注释中使用,以定义不支持ruby元素的浏览器所显示的内容 HTML5: <ruby>漢 <rt><rp>(</rp>ㄏㄢˋ<rp>)</rp></rt></ruby>
HTML4: none - wbr元素表示软换行。他与br元素的区别:br元素表示此处必须换行,而wbr元素的意思是浏览器窗口或父级元素的宽度够宽时。不进行换行,而当宽度不够时,主动在此处进行换行。
- canvas元素表示图形,比如图表和其他图像。这个元素本身没有行为,仅提供一块画布,但它把一个绘图API展现给客户端javascript,以使脚本能够把想绘制的东西绘制到这块画布上
- command元素表示命令按钮,比如单选按钮,复选按钮或按钮
- details元素表示用户要求得到并且可以得到的细节信息。它可以与summary元素配合使用。summary元素提供标题或图例。标题是可见的,用户点击标题时,会显示出细节信息,summary元素应该details元素的第一个元素
- datalist元素表示可选数据的列表,与input元素配合使用,可以制作出输入值的下拉列表 html5新增功能。
- datagrid元素表示可选数据的列表,他以树形列表的形式来显示。
- keygen元素表示生成密匙。 output元素 表示不同类型的输出,比如脚本的输出 source元素为媒介元素定义媒介资源 对应html4的<param>
- menu元素表示菜单列表。当希望列出表单空间时使用
3.新增的input元素的类型
该类型表示必须输入E-mail地址的文本输入框
HTML5中代码示例:
<input type="email" />
- url
该类型表示必须输入URL地址的文本输入框
HTML5中代码示例:
<input type"url" />
- number
该类型表示必须输入数值的文本输入框
HTML5中代码示例:
<input type=“number" />
- range
该类型表示必须输入一定范围内数字值的文本输入框
HTML5中代码示例:
<input type="number" name="points" min="1" max="10" />
- Date Pickers(数据检出器)
HTML5拥有多个可供选择日期和时间的新输入类型:
date-选取日、月、年
month-选取月、年
week-选取周、年
time-选取时间(小时和分钟)
datetime-选取时间、日、月、年(UTC时间)
datetime-local 选取时间、日、月、年(本地时间)
HTML5中代码示例
<input type="date" />
4.废除的元素
1)、能用css替代的元素:对于basefont、big、font、s、tt、u、这些元素,由于它们的功能都是纯粹的 画面展示服务的,而HTML5中提倡把画面展示性功能放在css样式中统一编辑,所以将这些元素废除。
2)、不再使用Frame框架:由于frame框架对网页可用性存在负面影响,html5中不支持frame,只支持iframe框架,或者用服务器方创建的多个页面组成的复合页面的形式。
3)、只有部分浏览器支持的元素:applet、bgsound、blink、marquee等元素。bgsound和marquee只被ie支持,被html5废除。其中applet元素可由embed元素或object元素替代,bgsound元素可由audio元素替代,marquee可以由javascript编程方式替代。
4)、其他被废除的元素:废除rb元素,使用ruby元素替代;废除acronym元素,使用abbr元素替代;废除dir元素,使用yl元素替代;废除isindex元素,使用form元素与input元素相结合的方式替代;废除listing元素,使用pre元素替代;废除nextid元素,使用guids替代;废除plaintext元素,使用 ”text/plian“ MIME类型替代。
相关推荐
【狂神Java学习笔记——前端入门——HTML、CSS、JavaScript学习代码】是针对初学者的一份详实的学习资料,这份笔记记录了跟随B站知名up主“遇见狂神说”的java系列视频中关于前端开发的基础内容。笔记内容不仅与视频...
本学习笔记将聚焦于HTML5的基础知识,包括其新特性、元素和最佳实践。 一、HTML5的新特性 1. 语义化标签:HTML5引入了新的语义化标签,如、、、和等,这些标签有助于更好地组织内容,提高可读性和可访问性。 2. ...
前端学习(六)——javascript学习笔记(四)HTML DOM.xmind
Web 前端学习笔记——HTML 基础 本文主要介绍了 Web 前端学习笔记——HTML 基础相关知识点,涵盖了浏览器内核、Web 标准、HTML 语言等方面。 一、浏览器内核 浏览器内核是指浏览器核心引擎,负责解析和渲染网页。...
它能够让你将设计样式与网页内容分离,使得网页内容的结构与表现形式相分离,使网页更加易于维护和更新。 【CSS的基本使用】 CSS的使用主要有三种方式:行内样式、内部样式表和外部样式表。行内样式是直接在HTML...
尚硅谷(李立超)——HTML5&CSS3笔记总结【持续更新】 本文适合前端菜鸟食用,小编自己整理的李立超老师视频的笔记,手打不易,那就望您每年快乐吧。逃) 一、进制 1.十进制(日常使用): 特点:满10进1 计数:0 1 ...
HTML入门
这篇“web学习笔记——javascript基础”将带你走进JavaScript的世界,理解其基本概念和常用语法。 JavaScript语法基础: 1. 变量:在JavaScript中,变量用于存储数据。声明变量使用`var`关键字,例如`var myVar = ...
XML的设计目标是传输和存储数据,而非展示数据,这与HTML(超文本标记语言)的主要用途有所区别。HTML主要用于网页的布局和展示,而XML则专注于描述数据的结构和内容。XML文档由元素、属性、实体和命名空间等组成,...
Spring.NET学习笔记22——整合WCF(应用篇) http://www.cnblogs.com/GoodHelper/archive/2010/05/15/SpringNet_Wcf.html
刘冬编写的Spring.NET学习笔记26——整合NVelocity例子。 原文:http://www.cnblogs.com/GoodHelper/archive/2009/11/20/SpringNet_NVelocity.html
刘冬编写Spring.NET学习笔记25——整合Quartz.NET例子。 原文: http://www.cnblogs.com/GoodHelper/archive/2009/11/20/SpringNet_QuartzNet.html
【JSP学习笔记——初学者的选择】 JSP(JavaServer Pages)是JavaEE平台中用于构建动态网页的应用技术。作为初学者,理解JSP的基本概念和技术特性至关重要。 1. **为何选择JSP?** JSP的出现主要是为了解决...
刘冬编写的Spring.NET学习笔记21——整合WebService的例子。 原文:http://www.cnblogs.com/GoodHelper/archive/2009/11/19/SpringNet_WebService.html
本文将深入探讨"Web学习笔记——jsp基础语法"这一主题,重点关注JSP(JavaServer Pages)的基础知识。JSP是Java平台上的动态网页技术,它允许开发者将HTML、XML或其他标记语言与Java代码结合,以创建交互式的Web应用...
这个“重新整理后的Oracle OAF学习笔记——离线版本”提供了一套详细的学习资源,帮助用户深入理解并掌握OAF的相关技术。 在这些压缩包文件中,我们可以看到一些关键的文档和样式表,它们可能是笔记的各个章节或...
Java JDK 6学习笔记——PPT简体版是针对初学者和有经验的开发者们的一份宝贵资源,它深入浅出地介绍了Java编程语言的核心概念和技术。这份资料以PPT的形式呈现,使得学习过程更加直观易懂,同时包含了课程中的源代码...
内网渗透实战——红日ATT&CK系列靶场(一)学习笔记_红日靶场1攻略-CSDN博客.html