HTML5新属性

一、HTML5 的新特性

  HTML5 定义了 HTML 标准的最新版本,是对 HTML 的第五次重大修改;

  两个概念:

      • 是一个新版本的 HTML 语言,定义了新的标签、特性和属性

      • 拥有一个强大的技术集,这些技术集是指: HTML5CSS3javascript, 这也是广义上的 HTML5

   

  1、HTML5 拓展了哪些内容

      ① 语义化标签

      ② 本地存储

      ③ 兼容特性

      ④ 2D、3D

      ⑤ 动画、过渡

      ⑥ CSS3 特性

      ⑦ 性能和集成

  

  2、HTML5 的现状

    HTML5 的新增特性主要是针对于以前的不足,增加了一些新的标签、新的表单和新的表单属性等。这些新特性基本是 IE9+ 以上版本的浏览器才支持;

 

二、HTML5 新增属性

 

  1、HTML5 新增的语义化标签

    以前布局基本用 div 来做,但div 对于搜索引擎来说,是没有语义的。

    新增的语义化标签:

<body>
    <header> 头部标签 </header>
    <nav>    导航标签  </nav>
    <article> 内容标签 </article>
    <section> 定义文档某个区域 </section>
    <aside>   侧边栏标签 </aside>
    <footer>  尾部标签  </footer>
</body>

<div class=“header”> </div> <div class=“nav”> </div> <div class=“content”> </div> <div class=“footer”> </div>

 

    注意:

      这种语义化标准主要是针对搜索引擎的 ,这些新标签页面中可以使用多次 ,

      在 IE9 中,需要把这些元素转换为块级元素;

      语义化标签,在移动端支持比较友好;

 

  2、HTML5 新增的多媒体标签

      • embed:标签定义嵌入的内容

      • audio:播放音频

      • video:播放视频

 

      特点:

        HTML5在不使用插件的情况下,也可以原生的支持音频格式文件的播放,可以很方便的在页面中嵌入音频和视频,而不再去使用 flash 和其他浏览器插件(flash常常崩溃)但支持格式有限;

   

    1、多媒体 embed(会使用)

        embed可以用来插入各种多媒体,格式可以是 Midi、Wav、AIFF、AU、MP3等等。url为音频或视频文件及其路径,可以是相对路径或绝对路径。

        因为兼容性问题,我们这里只讲解 插入网络视频, 后面H5会讲解 audio 和video 视频多媒体。

<embed src="http://player.youku.com/player.php/sid/XMTI4MzM2MDIwOA==/v.swf" allowFullScreen="true" quality="high" width="480" height="400" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash"></embed>

 

    2、视频:<video>

      当前 <video> 元素支持三种视频格式: 尽量使用 mp4格式 ,低版本不支持:

      (1)语法:

<video src="文件地址" controls="controls" width="300" autoplay="autoplay" muted="muted"> </video> 

 

    // 播放录像
    <video controls="controls" width="300"> 
        <source src="move.ogg" type="video/ogg" > 
        <source src="move.mp4" type="video/mp4" > 
    </ video >

  

      (2)常见属性

属性描述
src url 视频url地址
controls controls 播放控件
autoplay autoplay 自动播放,谷歌默认muted
loop loop 循环播放
width pixelx(像素) 播放器宽度
height pixelx(像素) 播放器高度
preload auto(预先加载) none(不加载) 预先加载(有autoplay忽略)
poster imgurl 加载等待的画面图片,默认第一帧
muted muted 静音播放,谷歌默认

      (3)案例:

<style>
    video {
        width: 100%;
    }
</style>
<body>
    <video src="media/mi.mp4" autoplay="autoplay" muted="muted" loop="loop" poster="media/pic.jpg">
    </video>
</body>

 

 

    3、音频: <audio>

      当前 <audio> 元素支持三种音频格式:主要是用mp3

      (1)语法:

  <audio src="文件地址" controls="controls"></audio> 
      < audio controls="controls" > 
          <source src="happy.mp3" type="audio/mpeg" > 
          <source src="happy.ogg" type="audio/ogg" > 
          您的浏览器暂不支持 <audio> 标签。 
    </ audio>

 

      (2)属性:

属性描述
src url 视频url地址
autoplay autoplay 自动播放,谷歌默认muted
controls controls 播放控件
loop loop 循环播放

        谷歌浏览器把音频和视频自动播放禁止了;

 

    3、多媒体

      1、插入音频、视频和flash

        语法:

<embed src=”多媒体文件地址” width=””> </embed>

 

      2、插入背景音乐

<bgsound src=”背景音乐的地址”/>

  

      loop可选值:

        Loop=”2”表示重复两次;

        loop=”infinite”表示无限循环;

        loop=”-1”无限次;

 

  3、 HTML5 新增的 input 类型

    1、新增类型

属性值说明:限制用户输入的类型
type="email" 邮件类型
type="url" 地址类型
type="date" 日期类型
type="time" 时间类型
type="month" 月份类型
type="week" 周类型
type="color" 生成一个颜色表单
type="number" 数字类型(常用)
type="tel" 手机号码(常用)
type="search" 搜索框(常用)

 

    2、新增表单属性

属性说明
required required 表单拥有该属性表示内容不能为空,必填
placeholder 提示文本 表单的提示信息,不占位
autofocus autofocus 页面加载完自动聚焦到指定表单
autocomplete off/on 当用户在字段键入时,浏览器基于之前键入过的值,应该显示出在字段中填写的选项;默认打开,如 autocompplete="on"需要放在表单内,同时加name属性,成功提交
multiple multiple 多选文件提交
<style>
        /* 可以通过以下设置方式修改placeholder里面的字体颜色:  */
        input::placeholder {
            color: pink;
        }
</style>
<body>
    <form action="">
        <ul>
            <li>数量:<input type="number"></li>
            <li>手机号码:<input type="tel"></li>
            <li>搜索:<input type="search"></li>
        </ul>
    </form>
</body>

 

 综合表单案例:

<form action="">
  <fieldset>
    <legend>学生档案</legend>
    <label for="userName">姓名:</label>
    <input type="text" name="userName" id="userName" placeholder="请输入用户名"> <br>
    <label for="userPhone">手机号码:</label>
    <input type="tel" name="userPhone" id="userPhone" pattern="^1\d{10}$"><br>
    <label for="email">邮箱地址:</label>
    <input type="email" required name="email" id="email"><br>
    <label for="collage">所属学院:</label>
    <input type="text" name="collage" id="collage" list="cList" placeholder="请选择"><br>
    <datalist id="cList">
      <option value="前端与移动开发学院"></option>
      <option value="java学院"></option>
      <option value="c++学院"></option>
    </datalist><br>
    <label for="score">入学成绩:</label>
    <input type="number" max="100" min="0" value="0" id="score"><br>
    <label for="level">基础水平:</label>
    <meter id="level" max="100" min="0" low="59" high="90"></meter><br>
    <label for="inTime">入学日期:</label>
    <input type="date" id="inTime" name="inTime"><br>
    <label for="leaveTime">毕业日期:</label>
    <input type="date" id="leaveTime" name="leaveTime"><br>
    <input type="submit">
  </fieldset>
</form>

 

三、广义的HTML5

广义的 HTML5 是 HTML5 本身 + CSS3 + JavaScript 。

虽然 HTML5 的一些特性仍然不被某些浏览器支持,但是它是一种发展趋势。

HTML5 MDN 介绍:

https://developer.mozilla.org/zh-CN/docs/Web/Guide/HTML/HTML

 

HTML标签附录

HTML大概有七八百个标签

<!--...--> 定义注释。

<!DOCTYPE>     定义文档类型,所有H5都是打头。
<a>    定义锚。
<abbr>    定义缩写。
<acronym>    定义只取首字母的缩写。
<address>    定义文档作者或拥有者的联系信息。
<applet>    不赞成使用。定义嵌入的 applet。
<area>    定义图像映射内部的区域。
<article>    定义文章。
<aside>    定义页面内容之外的内容。
<audio>    定义声音内容。
<b>    定义粗体字。
<base>    定义页面中所有链接的默认地址或默认目标。
<basefont>    不赞成使用。定义页面中文本的默认字体、颜色或尺寸。
<bdi>    定义文本的文本方向,使其脱离其周围文本的方向设置。
<bdo>    定义文字方向。
<big>    定义大号文本。
<blockquote>    定义长的引用。
<body>    定义文档的主体。
<br>    定义简单的折行。
<button>    定义按钮 (push button)。
<canvas>    定义图形。
<caption>    定义表格标题。
<center>    不赞成使用。定义居中文本。
<cite>    定义引用(citation)。
<code>    定义计算机代码文本。
<col>    定义表格中一个或多个列的属性值。
<colgroup>    定义表格中供格式化的列组。
<command>    定义命令按钮。
<datalist>    定义下拉列表。
<dd>    定义定义列表中项目的描述。
<del>    定义被删除文本。
<details>    定义元素的细节。
<dir>    不赞成使用。定义目录列表。
<div>    定义文档中的节。
<dfn>    定义定义项目。
<dialog>    定义对话框或窗口。
<dl>    定义定义列表。
<dt>    定义定义列表中的项目。
<em>    定义强调文本。
<embed>    定义外部交互内容或插件。
<fieldset>    定义围绕表单中元素的边框。
<figcaption>    定义 figure 元素的标题。
<figure>    定义媒介内容的分组,以及它们的标题。
<font>    不赞成使用。定义文字的字体、尺寸和颜色。
<footer>    定义 section 或 page 的页脚。
<form>    定义供用户输入的 HTML 表单。
<frame>    定义框架集的窗口或框架。
<frameset>    定义框架集。
<h1> to <h6>    定义 HTML 标题。
<head>    定义关于文档的信息。
<header>    定义 section 或 page 的页眉。
<hr>    定义水平线。
<html>    定义 HTML 文档。
<i>    定义斜体字。
<iframe>    定义内联框架。
<img>    定义图像。
<input>    定义输入控件。
<ins>    定义被插入文本。
<isindex>    不赞成使用。定义与文档相关的可搜索索引。
<kbd>    定义键盘文本。
<keygen>    定义生成密钥。
<label>    定义 input 元素的标注。
<legend>    定义 fieldset 元素的标题。
<li>    定义列表的项目。
<link>    定义文档与外部资源的关系。
<map>    定义图像映射。
<mark>    定义有记号的文本。
<menu>    定义命令的列表或菜单。
<menuitem>    定义用户可以从弹出菜单调用的命令/菜单项目。
<meta>    定义关于 HTML 文档的元信息。
<meter>    定义预定义范围内的度量。
<nav>    定义导航链接。
<noframes>    定义针对不支持框架的用户的替代内容。
<noscript>    定义针对不支持客户端脚本的用户的替代内容。
<object>    定义内嵌对象。
<ol>    定义有序列表。
<optgroup>    定义选择列表中相关选项的组合。
<option>    定义选择列表中的选项。
<output>    定义输出的一些类型。
<p>    定义段落。
<param>    定义对象的参数。
<pre>    定义预格式文本。
<progress>    定义任何类型的任务的进度。
<q>    定义短的引用。
<rp>    定义若浏览器不支持 ruby 元素显示的内容。
<rt>    定义 ruby 注释的解释。
<ruby>    定义 ruby 注释。
<s>    不赞成使用。定义加删除线的文本。
<samp>    定义计算机代码样本。
<script>    定义客户端脚本。
<section>    定义 section。
<select>    定义选择列表(下拉列表)。
<small>    定义小号文本。
<source>    定义媒介源。
<span>    定义文档中的节。
<strike>    不赞成使用。定义加删除线文本。
<strong>    定义强调文本。
<style>    定义文档的样式信息。
<sub>    定义下标文本。
<summary><details> 元素定义可见的标题。
<sup>    定义上标文本。
<table>    定义表格。
<tbody>    定义表格中的主体内容。
<td>    定义表格中的单元。
<textarea>    定义多行的文本输入控件。
<tfoot>    定义表格中的表注内容(脚注)。
<th>    定义表格中的表头单元格。
<thead>    定义表格中的表头内容。
<time>    定义日期/时间。
<title>    定义文档的标题。
<tr>    定义表格中的行。
<track>    定义用在媒体播放器中的文本轨道。
<tt>    定义打字机文本。
<u>    不赞成使用。定义下划线文本。
<ul>    定义无序列表。
<var>    定义文本的变量部分。
<video>    定义视频。
<wbr>    定义可能的换行符。
<xmp>    不赞成使用。定义预格式文本。

 

 

属性 描述

accesskey    规定激活元素的快捷键。
class    规定元素的一个或多个类名(引用样式表中的类)。
contenteditable    规定元素内容是否可编辑。
contextmenu    规定元素的上下文菜单。上下文菜单在用户点击元素时显示。
data-*    用于存储页面或应用程序的私有定制数据。
dir    规定元素中内容的文本方向。
draggable    规定元素是否可拖动。
dropzone    规定在拖动被拖动数据时是否进行复制、移动或链接。
hidden    规定元素仍未或不再相关。
id    规定元素的唯一 id。
lang    规定元素内容的语言。
spellcheck    规定是否对元素进行拼写和语法检查。
style    规定元素的行内 CSS 样式。
tabindex    规定元素的 tab 键次序。
title    规定有关元素的额外信息。
translate    规定是否应该翻译元素内容。
 

 

 

posted @ 2021-02-05 10:19  新新子  阅读(353)  评论(0编辑  收藏  举报