html5 新特性,新标签

本文介绍了HTML5的核心特性,包括其对语义化的强调,如新增的语义元素如<header>,<nav>,<article>等,以及移除的过时元素。此外,讨论了HTML5在布局上的改进,如<header>和<footer>等新标签,增强了文档结构。在表单控件方面,提到了新输入类型如email、date等以及autocomplete和novalidate属性。最后,文章提及了HTML5对多媒体的支持,如<video>标签和相关属性。

一、HTML5 概述

1.1、什么是 HTML5

HTML5 是HTML最新的修订版本(超文本标记语言的第五次重大修改),2014年10月由万维网联盟 (W3C)完成标准制定。

HTML5 的设计目的是为了在移动设备上支持多媒体。

HTML5 简单易学。

HTML5 是下一代 HTML 标准。

HTML,HTML 4.01的上一个版本诞生于 1999 年。自从那以后,Web 世界已经经历了巨变。

HTML5 仍处于完善之中。然而,大部分现代浏览器已经具备了某些 HTML5 支持。

HTML5 中的一些有趣的新特性:

  • 用于绘画的 canvas 元素
  • 用于媒介回放的 video 和 audio 元素
  • 对本地离线存储的更好的支持
  • 新的特殊内容元素,比如 article、footer、header、nav、section
  • 新的表单控件,比如 calendar、date、time、email、url、search

1.2、将 HTML5 元素定义为块元素

HTML5 定了 8 个新的 HTML 语义(semantic) 元素。

所有这些元素都是 块级 元素。 为了能让旧版本的浏览器正确显示这些元素,你可以设置 CSS 的 display 属性值为 block:

header,section,footer,aside,nav,main,article.figure{

display:block;

}

1.3、为 HTML 添加新元素(自定义标签)

你可以为 HTML 添加新的元素。

该实例向 HTML 添加的新的元素,并为该元素定义样式,元素名为 <myHero>

<myHero>我的第一个新元素 </myHero>

1.4、HTML5语义化

在HTML5添加新标签的时候,提出了一个关键词 “语义”。

  • 语义= 意义
  • 语义元素 = 有意义的元素

一个语义元素能够清楚的描述其意义给浏览器和开发者。

无语义 元素实例:<div><span> - 无需考虑内容.

语义元素实例:<form>,<table>,and<img>- 清楚的定义了它的内容.

HTML5新标签的优点:

  • 更注重于内容而不是形式:
  • 之前的标签更注重于怎么把内容显示到页面中,新标签更加容易明显的 让人明白存放的是什么东西;
  • 对人的友好:更加的语义化,高度的描述性,更加的直观,增加代码的可读性;
  • 对计算机的友好:浏览器更容易解析,搜索引擎更容易抓取文档内容,之前的定义区块,都是使用 div结合id和class使用,会出现各种各样的命名;现在定义的新标签更规范;
  • 代码更加的简洁;

1.5、新语义元素

HTML5 添加了很多语义元素如下所示:

标签描述
<article>定义页面独立的内容区域。
<aside>定义页面的侧边栏内容。
<bdi>允许您设置一段文本,使其脱离其父元素的文本方向设置。
<command>定义命令按钮,比如单选按钮、复选框或按钮
<details>用于描述文档或文档某个部分的细节
<dialog>定义对话框,比如提示框
<summary>标签包含 details 元素的标题
<figure>规定独立的流内容(图像、图表、照片、代码等等)。
<figcaption>定义<figcaption> 元素的标题
<footer>定义 section 或 document 的页脚。
<header>定义了文档的头部区域
<mark>定义带有记号的文本。
<meter>定义度量衡。仅用于已知最大和最小值的度量。
<nav>定义导航链接的部分。
<progress>定义任何类型的任务的进度。
<ruby>定义 ruby 注释(中文注音或字符)。
<rt>定义字符(中文注音或字符)的解释或发音。
<rp>在 ruby 注释中使用,定义不支持 ruby 元素的浏览器所显示的内容。
<section>定义文档中的节(section、区段)。
<time>定义日期或时间。
<wbr>规定在文本中的何处适合添加换行符。

语义化标签的使用:

·<!-- 头部 -->
 <header>
       <ul>
        <li><a href="#">这是头部</a></li>
       </ul> 
    </header>
<!-- 导航栏 -->
<nav>
    <ul>
        <li><a href="#">导航1</a></li>
        <li><a href="#">导航1</a></li>
        <li><a href="#">导航1</a></li>
        <li><a href="#">导航1</a></li>
    </ul>
</nav>.......·

1.5、HTML5已移除的元素

<acronym> :定义首字母缩写,HTML5 中不支持<acronym>标签。请使用 标签代替

<basefont> :规定页面上的默认字体颜色和字号:

<big> :呈现大号字体效果

<dir> :定义目录列表,类似于ul和ol

<center>:对其所包括的文本进行水平居中。

<font> :规定文本的字体、字体尺寸、字体颜色。

<frame> :定义 frameset 中的一个特定的窗口(框架)

<frameset> :可定义一个框架集。

<noframes> :可为那些不支持框架的浏览器显示文本。noframes 元素位于 frameset 元素内部。

<strames> :可定义加删除线文本定义。

<tt> :呈现类似打字机或者等宽的文本效果。

二、HTML5新布局标签

许多现有网站都包含以下HTML代码:<div id="nav"><div class="header">,或者 <div id="footer">,来指明导航链接,头部,以及尾部。

首先要清楚一个概念,HTML并不是用来写页面样式的,而是用来表示一个网页的基本架构的,样式 用CSS来实现。

HTML5除了提出很炫的新效果以外还加强了语义化结构

HTML5新增的还有article、nav、header、footer…等等等,其实现效果都是和div一样没有效果,但是 合理使用却能让页面结构更加清晰有逻辑。

如果了解H5之前的HTML,会发现之前页面布局完全就是使用的div+css,但是div是不能滥用的,只能用来 做整体的布局,细节部分还是要用其他标签,一方面程序可读性和维护性加强,另一方面,可以用下级 选择器来写样式,减少了class和id的命名,可以精简网页的结构;而且语义化结构 有条理才能让搜索引 擎更加友好。

HTML5 提供了新的语义元素来明确一个Web页面的不同部分:

在这里插入图片描述

<header>: 头部标签

<nav>: 导航栏标签

<article>: 文档、页面 独立的、完整的 类型标签

<section>: 定义文档中的章节类型标签

<aside>:定义页面主区域内容外的内容

<footer>: 文档底部区域

2.1、HTML5 header 元素

<header>元素描述了文档的头部区域。

<header> 元素主要用于定义内容的介绍展示区域。

在页面中你可以使用多个<header>元素(文档头、独立内容头)。

2.2、HTML5 nav元素

<nav>:标签定义导航链接的部分。

<nav>元素用于定义页面的导航链接部分区域,但是,不是所有的链接都需要包含在<nav>元素中!

<nav> <a href="">前端</a> <a href="">HTML</a> <a href="">css</a> <a href="">JavaScript</a> </nav>

2.3、HTML article元素

<article>标签定义独立的内容

article元素代表文档、页面或应用程序中独立的、完整的、可以独自被外部引用的内容。它可以是一篇 博客或报刊中的文章、一篇论坛帖子、一段用户评论或独立的插件,或其他任何独立的内容。除了内容 部分,一个article元素通常有它自己的标题(一般放在一个header元素里面),有时还有自己的脚注。

注:article元素是可以嵌套使用的,内层的内容在原则上需要与外层的内容相关联。例如,一篇博客文 章中,针对该文章的评论就可以使用嵌套article元素的方式;用来呈现评论的article元素被包含在表示整 体内容的article元素里面。

2.4、HTML section元素

<section>标签定义文档中的节(section、区段)。比如章节、页眉、页脚或文档中的其他部分。

从字面理解就是区块、部分的意思,相对于article元素更加广泛,每个区块都可以使用,比如页面里的 导航菜单、文章正文、文章的评论等。

  • section元素用于对网站或应用程序中页面上的内容进行分块,section元素的作用是对页面上的内 容进行分块,或者说对文章进行分段;
  • 一个section元素通常由内容及其标题组成。通常不推荐为那些没有标题的内容使用section元素,
  • section元素并非一个普通的容器元素;当一个内容需要被直接定义样式或通过脚本定义行为时,推 荐使用div而非section元素;
  • 如果article、nav、aside元素都符合某条件,那么就不要用section元素定义; section元素中的内容可以单独存储到数据库中或输出到word文档中。

2.5、HTML5 aside元素

<aside> 标签定义页面主区域内容之外的内容(比如侧边栏)。

aside 标签的内容应与主区域的内容相关。

2.6、HTML5 footer元素

<footer>元素描述了文档的底部区域.

<footer>元素应该包含它的包含元素

一个页脚通常包含文档的作者,著作权信息,链接的使用条款,联系信息等

在这里插入图片描述

三、HTML新表单元素

HTML5 拥有多个新的表单输入类型。这些新特性提供了更好的输入控制和验证。

控件名称type属性描述
电子邮箱email包含 e-mail 地址的输入域(有校验),
拾色器colorcolor 类型用在input字段主要用于选取颜色 选择你喜欢的颜色
日期字段date datetime datetime-local month week time定义日期字段:包含年月日 定义日期字段:(UTC 时间)(仅opera支持) 定义日期字段:包含年月日时分(无时区)定义日期:年月 定义年中的周数 定义时间
数值框number输入类型用于包含数字值的输入字段,可以设置可接受数字的限制。 使用min属性和max属性设置最小和最大值 step设置数字间隔 如果step=“3” ,那么数值间隔是3
数值滑块空间range用于应该包含一定范围内数字值的输入域。。 range 类型显示为滑动条。 使用min属性和max属性设置最小和最大值,step设置数字间隔
搜索框search用于搜索字段,比如站内搜索或谷歌搜索等。
电话号码框tel定义输入电话号码字段,但是不会进行校验
URL地址url包含 URL 地址的输入字段。会在提交表单时对 url 字段的值自动进行验证。

email自带校验功能 要在表格中输入@符号,如果没有输入规定的格式会报错

date 定义日期,在不同浏览器内核解析,默认显示效果会有不同。

search 用来搜索,跟文本框的区别是后面有×号,可以清除文本框中输入的内容。

tel :电话号码可以定义手机号码长度,在不设置request标签 提交不会进行校验。

注意:并不是所有的主流浏览器都支持新的input类型,不过您已经可以在所有主流的浏览器中使用它们 了。即使不被支持,仍然可以显示为常规的文本域。

3.2、HTML5新的表单控件

3.2.1、HTML5 detalist元素(重要 )

<datalist>元素规定输入域的选项列表。

<datalist>属性规定 form 或 input 域应该拥有自动完成功能。当用户在自动完成域中开始输入时, 浏览器应该在该域中显示填写的选项:

使用 <input> 元素的list属性与 <datalist> 元素绑定。

datalist 表单中h5新属性
<input type="text" name="list" list="mylist">
<datalist id="mylist">
<option value="cad">cad</option>·

<option value="html">html</option>

</datalist><br>

效果图如下:

在这里插入图片描述

3.3.1、form / input autocomplete 属性

autocomplete 属性规定 form 或 input 域应该拥有自动完成功能。

当用户在自动完成域中开始输入时,浏览器应该在该域中显示填写的选项。

提示: autocomplete 属性有可能在 form元素中是开启的,而在input元素中是关闭的。

注意:autocomplete 会根据浏览器设置进行显示 ,如下图:可以查看浏览器设置 点击个人设置可以查看

在这里插入图片描述

点击下面按钮可以自由进行设置

在这里插入图片描述

当浏览器上面设置打开情况之下,也可以在页面进行设置开关,autocomplete 设置on 和off 进行设置。如下

<form action="" autocomplete="on">
姓名:<input type="text" name="fname"><br>
邮箱: <input type="email" name="email" autocomplete="off"><br>

`

3.3.2、form novalidate 属性

novalidate 属性是一个 boolean(布尔) 属性.

novalidate 属性规定在提交表单时不应该验证 form 或 input 域。

3.3.3、input placeholder 属性

placeholder 属性提供一种提示(hint),描述输入域所期待的值。

简短的提示在用户输入值前会显示在输入域上。

注意: placeholder 属性适用于以下类型的 <input> 标签:text, search, url, tel, email 以及 password。

四、HTML5多媒体标签

4.1、HTML5 Video(视频)

很多站点都会使用到视频,HTML5 提供了展示视频的标准。

直到现在,仍然不存在一项旨在网页上显示视频的标准。

今天,大多数视频是通过插件(比如 Flash)来显示的。然而,并非所有浏览器都拥有同样的插件。 HTML5 规定了一种通过 video 元素来包含视频的标准方法。

4、2.视频的相关属性

属性描述
mutedmuted如果出现该属性,视频的音频输出为静音。
autoplayautoplay如果出现该属性,则视频在就绪后马上播放。
controlscontrols添加播放控制及音量控制功能栏。
heightpx指定播放器的高度,以pixel为单位。
looploop如果指定,视频将重复播放。
posterurl指定视频的预览图
preloadauto metadata none如果指定,视频会在加页面加载过程中被加载。当autoplay被指定时,会被忽略。 auto - 当页面加载后载入整个音频 meta - 当页面加载后只载入元数据 none - 当页面加载后不载入音频
srcURL目标视频的URL
widthpx指定播放器的宽度,以pixel为单位

注意:自动播放在谷歌内核中可能不支持,加一个静音就可以自动播放。

4、3音频标签

<audio>目前, 视频元素支持三种音频格式文件: MP3, Wav, 和 Ogg

注意:音频标签的属性与视频标签相同,不过要写音频标签的话必须要加controls

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值