前端开发(HTML,CSS,VUE,JS)从入门到精通!第一天(HTML5)

发布于:2025-08-05 ⋅ 阅读:(13) ⋅ 点赞:(0)

一、HTML5 简介

1.HTML

全称是 Hyber Text Markup Language,超文本标记语言,它是互联网上应用最广泛的标记语言,简单说,HTML 页面就等于“普通文本+HTML标记(HTML标签)“。

2.HTML 总共经历了如下的发展史:

HTML(第一版)--> HTML2.0 --> HTML3.2 --> HTML4.0 --> HTML4.01 --> XHTML1.0 --> HTML5

3.HTML4.01 与 XHTML

XHTML 全称是 eXtensible Hyber Text Markup Language,扩展的超文本标记语言,XHTML 和 HTML4.01 具有很好的兼容性,而且 XHTML 是更严格,更纯净的 HTML 代码。

4.HTML 和 XHTML 文档的类型定义(DTD文件)

W3C 组织使用 DTD(Document Type Definition,文档类型定义)来定义 HTML 和 XHTML 的语义约束,包含HTML 文档可以出现哪些元素和元素支持哪些属性等等,比如:HTML4.01 的 DTD 文档:

这里就有一个 DTD 约束文件,其中包含HTML 文档可以出现哪些元素和元素支持哪些属性等等,按住“Ctrl”点击dtd文件查看源码:

5.从 XHTML 到 HTML5

虽然 W3C 组织努力为 HTML 指定规范,但是大部分编写 HTML 页面的人员没有受过专业训练,他们制作的 HTML 网页大部分没有遵守 HTML 规范,于是出现了一个尴尬的局面:一方面 W3C 组织极力呼吁大家遵守 HTML规范,另一方面,HTML 的制作者根本不理会这个呼吁,于是 WHATWG 组织开始制定了一种“妥协式”的规范:HTML5。

6.HTML5 的优势:

(1)解决跨浏览器问题:目前大多数浏览器都支持 HTML5。

(2)部分代替了原来的 JavaScript。

(3)更明确的语义支持

(4)增强了 Web 应用的功能

7. HTML5 页面的基本结构(树形结构)

<!--
  <!DOCTYPE html>:HTML5 的 DTD 约束文件定义并不符合 XML 文件的 DTD 规范,这正好是 HTML5 的设计哲学,HTML5 并不是规范设计,
  而是一种"妥协式"规范。
-->
<!DOCTYPE html>
<!--
  HTML 页面中的标签(元素)的形式:<标签名 属性名=属性值>内容</标签名>,标签中又可能包含其他标签
  <html>标签是 HTML 页面的根标签,任何一个 HTML 页面都是以根标签开头,其中 lang="en" 是 <html>标签的属性,说明文档使用的是
  en(英语),而cn表示中文
-->
<html lang="en"> <!--跟标签的开始-->
<head> <!--头标签的开始,该头标签又包含了一些子标签-->
  <!--meta 标签,是一个自结束标签,即没有结束标签,它的属性 charset="UTF-8"指明页面的字符编码为 UTF-8-->
  <meta charset="UTF-8">
  <!--title标签,表示页面的标题-->
  <title>首页</title>
</head> <!--头标签的结束-->
<body> <!--body标签,表示页面的主体,它跟 <head> 是同级的,是兄弟关系,HTML5 页面的主体就是写在 body 中的,即其他的标签就是写在body里面的-->
<!--body 标签里面包含了一个子标签 h1,是一个标题标签-->
<h1>第一个 HTML5 页面</h1>
</body> <!--body 标签的结束-->
</html> <!--跟标签的结束-->

8.HTML5 语法的变化

(1)标签不再区分大小写

<p>段落</p>和<P>段落</P> 一致

(2)元素可以省略结束标签:自结束

<img src="user.png"></img>和<img src="user.png"/>或<img src="user.png"> 一致

(3)允许省略属性值的属性

<input type="checkbox" checked>

(4)允许属性值不使用引号

<img src=user.png>

二、HTML5 的常用元素(标签)和 属性

1.HTML5 中保留的常用元素:基本元素

(1)<!-- -->:定义 HTML5 的注释

(2)<html>:H5 的根标签,可省略

(3)<head>:H5文档的页面头部分,可省略

(4)<title>:H5 文档的标题

(5)<body>:H5 文档的主体,其他的 H5 标签就是写在这个标签内的,它除了可以包含 id,class,style 属性之外,还可以指定 onclick,onmousedown,...事件属性,这些属性可以在 JavaScript 代码中处理。
注意:我们后续讲的标签,如果没有特别说明,表示该标签都有 id,class,style 属性,并且可以指定 onclick,onmousedown...等事件属性。

(6)<style>:用于定义 CSS 样式表,不具有 id,class,style 以及事件属性

(7)<h1>~<h6>:用于指定标题一到标题六,会独占一行,称为块级标签。

(8)<p>:用于定义一个段落文本,也会独占一行,块级标签。

(9)<br>:换行

(10)<hr>:水平分割线

(11)<div>:用于定义文档中的节,其中可以包含任意的其他标签,会独占一行,是块级标签。

(12)<span>:与 <div> 类似,区别是 <span> 默认情况下不会换行,称为行级标签。

示例:

<!DOCTYPE html>

<html lang="en">

<head>

  <meta charset="UTF-8">

  <title>demo3</title>

</head>

<body>

<!--h${我的标题$}*6-->

<!--h1~h6为标题标签,是块级标签,会独占一行-->

<h1>我的标题1</h1>

<h2>我的标题2</h2>

<h3>我的标题3</h3>

<h4>我的标题4</h4>

<h5>我的标题5</h5>

<h6>我的标题6</h6>

<hr> <!--水平分割线-->

<!--p{我是段落文本$,我是块级标签,我会独占一行}*3-->

<p>我是段落文本1,我是块级标签,我会独占一行</p>

<p>我是段落文本2,我是块级标签,我会独占一行</p>

<p>我是段落文本3,我是块级标签,我会独占一行</p>

<!--lorem10:随机生成 10 个单词组成的段落,lorem:随机生成一段文本-->

<p>Lorem ipsum dolor sit amet, consectetur.</p>

<!--HTML 代码中的换行符没有用,要让HTML内容换行,必须加上<br>-->

<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit.

  Aspernatur consectetur consequuntur cumque, dolorem dolorum explicabo facere hic incidunt,

  maiores officiis placeat quisquam quos repudiandae rerum sed sit voluptatem, voluptates voluptatum?</p>

<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. <br>

  Aspernatur consectetur consequuntur cumque, dolorem dolorum explicabo facere hic incidunt, <br>

  maiores officiis placeat quisquam quos repudiandae rerum sed sit voluptatem, voluptates voluptatum?</p>

<!--HTML代码中写多个空格自会表示一个空格,要在HTML中表示多个空格,要使用 &nbsp;-->

<p>您好 中国</p>

<p>您好&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;中国</p>

<!--div的作用是跟我们后面讲的 CSS 结合起来对页面进行区域的划分,它里面可以包含各种子标签-->

<!--div{我是div标签$,我是块级标签,我会独占一行}*2-->

<div>我是div标签1,我是块级标签,我会独占一行</div>

<div>我是div标签2,我是块级标签,我会独占一行</div>

<div>

  <h3>我是div中的子标签h3</h3>

  <p>我是div中的子标签p</p>

</div>

<!--span{我是span标签$,我是行级标签,我不会独占一行}*3-->

<span>我是span标签1,我是行级标签,我不会独占一行</span>

<span>我是span标签2,我是行级标签,我不会独占一行</span>

<span>我是span标签3,我是行级标签,我不会独占一行</span>

</body>

</html>

2.H5 保留的基本元素:文本格式化元素

(1)<b>:粗体

(2)<i>:斜体

(3)<em>:强调文本,和斜体差不多

(4)<strong>:粗体文本,和 <b> 差不多

(5)<small>:小号文本

(6)<sup>:定义上标

(7)<sub>:定义下标

(8)<bdo>:定义文本显示的方向,有一个属性 dir,取值 ltr:左到右,rtl:右到左

示例:

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>demo4</title>

</head>

<body>

<b>加粗文本</b>

<i>斜体文本</i>

<em>强调文本</em>

<strong>粗体文本</strong>

<small>小号文本</small>

<h3>以上标签都是行级元素,不会独占一行</h3>

<p>4<sup>2</sup> + 5<sup>3</sup> = ?</p>

<p>H<sub>2</sub> + O<sub>2</sub> = ?</p>

<bdo dir="ltr">从左到右的文本</bdo> <!--行级标签-->

<bdo dir="rtl">从右到左的文本</bdo>

</body>

</html>

3.H5保留的常用标签:超链接和锚点

(1)超链接:<a> 标签

① href:指向超链接要链接的资源地址,可以是绝对路径也可以是相对路径

② target:使用哪个框架集合来装载资源,取值可以是 _self(在当前窗口打开),_blank(在新窗口打开),_top(在顶层窗口打开,需要结合框架标签),_parent(在父窗口打开,需要结合框架标签)

示例:

(2)超链接的第二种用法:定义锚点,作用是在文档中生成一个定位点,然后通过超链接直接去到这个定位点。

4.H5保留元素:列表相关元素

(1)<ul>:unordered list,无序列表,其中只能包含li(list item)子标签

(2)<ol>:ordered list,有序列表,其中只能包含子标签li,ol的属性:

① type:指定使用哪种类型编号,1 表示数字,A 和a 表示字母,I 和i 表示罗马数字等等

② start:指定列表的起始数字,默认是第一个,比如1,2,3等

(3)li:包含在 <ul> 或 <ol> 中的每一个列表项,可以有多个

示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>demo7</title>
</head>
<body>
<!--ul/ol以及li都是块级标签-->
<!--ul>li{列表项$}*3-->
<ul>
    <li>列表项1</li>
    <li>列表项2</li>
    <li>列表项3</li>
</ul>
<!--ol>li{列表项$}*3-->
<ol>
    <li>列表项1</li>
    <li>列表项2</li>
    <li>列表项3</li>
</ol>
<!--ol[type=A]>li{列表项$}*3-->
<ol type="A">
    <li>列表项1</li>
    <li>列表项2</li>
    <li>列表项3</li>
</ol>
<!--ol[type=i]>li{列表项$}*3-->
<ol type="i">
    <li>列表项1</li>
    <li>列表项2</li>
    <li>列表项3</li>
</ol>
<!--ol[type=i][start=2]>li{列表项$}*3-->
<ol type="i" start="2">
    <li>列表项1</li>
    <li>列表项2</li>
    <li>列表项3</li>
</ol>
<ul>
    <li>主菜单1
        <ul>
            <li>子菜单1</li>
            <li>子菜单2</li>
            <li>子菜单3</li>
        </ul>
    </li>
    <li>主菜单2
        <ul>
            <li>子菜单1</li>
            <li>子菜单2</li>
            <li>子菜单3</li>
        </ul>
    </li>
    <li>主菜单3
        <ul>
            <li>子菜单1</li>
            <li>子菜单2</li>
            <li>子菜单3</li>
        </ul>
    </li>
</ul>
</body>
</html>

(4)<dl>:用于定义列表

(5)<dt>:用于定义列表的标题

(6)<dd>:用于定义普通列表项,其中 dt 和 dd 是成对出现的,每一对都只有一个 dt 但是可以有多个 dd,该元素和 <div> 一致可以包含其他子标签,注意,dt 和dd 都是包含在 dl 元素中作为子元素,并且它们是兄弟关系(同级的)。

示例:

5.H5保留的元素:图像相关元素

(1)<img>:定义一幅图片

① src:指定图片位置,可以是相对路径也可以是绝对路径

② alt:指定一段文本,当图片无法显示时给出提示

示例:

(2)除此之外,与图片相关的还有如下两个标签:

<map>:用于定义图片映射,可以包含一个或多个 <area> 子标签,每个 <area> 用于定义区域,区域上可以指定链接到某个 url 地址。

<area>:用于定义图片映射的内部区域,包括以下属性:

shape:指定区域的类型,默认是 “rect” 矩形,还可以是 circle(圆形)和 ploy(多边形)

coords:指定多个坐标值,用于确认区域的位置

href:用于指定该区域链接的地址

示例:

当鼠标移动到指定区域时(热点区域),鼠标从箭头形状变为手指形状,证明这个区域时超链接,点击之后跳转到163网站。

6.H5保留元素:表格元素

(1)<table>:定义表格

        ① cellpadding:单元格内容和单元格边框之间的间距

        ② cellspacing:单元格之间的间距

        ③ border:表格边框的大小

(2)<caption>:表格的标题

(3)<tr>:table row,行

(4)<td>:定义单元格,列

        ① colspan:指定单元格跨多少列

        ② rowspan:指定单元格跨多少行

        ③ height:单元格高度

        ④ width:单元格宽度

示例:

(5)<th>:定义表格页眉单元格

(6)<tbody>:定义表格主体,一个 <table> 可以有一个或多个 <tbody>

(7)<thead>:表格头

(8)<tfoot>:表格脚

示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>demo12</title>
</head>
<body>
<!--创建表格,边框大小为1,单元格内边距为0,单元格外边距为0-->
<table border="1" cellpadding="0" cellspacing="0">
    <caption>图书馆存书</caption>
    <thead> <!--表格头-->
    <tr>
        <th>图书</th> <!--表格页眉单元格,即单元格的标题-->
        <th>作者</th>
    </tr>
    </thead>
    <tbody> <!--表格的主体,一个表格可以有一个或多个tbody-->
    <tr>
        <td>Java</td>
        <td>张三</td>
    </tr>
    <tr>
        <td>JavaEE</td>
        <td>李四</td>
    </tr>
    </tbody>
    <tbody> <!--表格的主体,一个表格可以有一个或多个tbody-->
    <tr>
        <td>Java</td>
        <td>张三</td>
    </tr>
    <tr>
        <td>JavaEE</td>
        <td>李四</td>
    </tr>
    </tbody>
    <tfoot> <!--表格脚-->
    <tr>
        <td colspan="2">现总计:4本图书</td>
    </tr>
    </tfoot>
</table>
</body>
</html>

7.框架

(1)H5 已经不推荐使用框架集,因此 H5 删除了<frameset>、<frame>、<noframes> 标签,而使用了一个<iframe> 来表示内联框架,该框架的属性有:

        ① src:指定一个 url 地址,表名该 iframe 将装载哪个页面

        ② width:iframe 的宽度

        ③ height:iframe 的高度

示例:

8.H5新增的属性

(1)contenteditable:如果该属性设置为 true,那么元素就可以编辑,就类似于文本框,可以把 div,table 等等变成可编辑的

(2)hidden:如果为 true,那么会隐藏元素

示例:

9.H5 新增的常用元素:语义相关的元素

(1)<mark>:用于标注某个文本,就类似于用荧光笔标注重点内容一样。

(2)<time>:用来显示被标注的内容是日期,时间或日期时间,有一个属性:

        ① datetime:用于提供时间,属性值应该符合 yyyy-MM-ddTHH:mm 格式的日期时间,当然,也可以只指定日期或指定时间

示例:

9. H5的头部和元信息

(1)H5 文档中的 <head> 标签可以包含如下子元素:

        ① <script>:用于包含 JavaScript 脚本

        ② <style>:用于包含 CSS 样式

        ③ <link>:用于链接外部 CSS 样式文件

        ④ <title>:用于指定文档标题

        ⑤ <base>:用于定义一个基准链接,那么该文档后面的元素的 URL 地址都会以该基准链接作为基础,常用的属性有:

1)href:指向所有链接的基准链接

示例:

<base href="http://localhost:8080/">

<a href="demo.html"></a> <!--完整地址:http://localhost:8080/demo.html -->

⑥ <meta>:用于定义页面的元数据信息,属性有:

        1)http-equiv:指定元信息的名称,该属性指定的名称具有特殊的意义,它可以向浏览器传回一些有用的信息,帮助浏览器正确的处理网页内容

        2)name:指定元信息的名称,名称随意

        3)content:指定元信息的值

                a.其中 http-equiv 属性支持的值有:

                        a)Expires:网页过期时间

                        b)Pragma:禁止浏览器从本地缓存中调阅网页内容

                        c)Refresh:指定多长时间后刷新指定页面

                        d)Set-Cookie:设置 Cookie(Cookie是服务器发送给客户端的一小段文本内容)

                        e)content-type:指定页面内容的类型和所用的字符集

示例:

10.H5 表单相关元素

(1)<form>:用于定义一个表单,包含的属性:

① action:当用户提交表单时,会跳转到 action 指定的后台页面来处理

② method:请求的类型,有 GET(默认请求类型)和 POST 类型,其中使用 GET 请求提交表单时,请求参数(表单参数)会附加在请求的 URL 地址后面传给后台,而且只能附加文本内容,可以传输的请求参数大小不大于 2K,而POST 请求在传输数据到后台时不采用附加请求参数到 URL 地址后面,传输的数据量要大很多,一般没有限制。

示例1:get 请求方式

示例2:post 请求方式

③ enctype:指定表单内容进行编码所用的字符集,取值有以下几种:

        1)application/x-www-form-urlencoded:这是默认的编码方式,使用这种编码方式会将表单控件(例如input)中的值处理成 url 编码的方式

        2)multipart/form-data:这种编码方式会以二进制流的方式来处理表单数据,例如上传文件的表单就应该将enctype 设置为该值。

示例:上传文件的表单

④ name:指定表单的名称

⑤ target:与超链接的 target 相同,可以是 _blank,_parent,_self 和 _top

(2)H5 中的表单元素:input 元素

① 单行文本:type=”text”

② 密码输入框:type=”password”

③ 隐藏域:type=”hidden”,不会显示,主要用于传输数据到后台

④ 单选框:type=”radio”

⑤ 复选框:type=”checkbox”

⑥ 图像域:type=”image”

⑦ 文件上传:type=”file”

⑧ 提交按钮:type=”submit”

⑨ 重置按钮:type=”reset”

注意:以上的 input 元素都有一个 name 属性,表示该表单元素的名称,提交表单时,这个 name 属性的名称和具体对应输入的值(就是表单元素的 value 属性)会以请求参数(键值对)的形式发送给后台处理。

示例:表单元素的使用:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>demo19</title>
</head>
<body>
<!--
对于包含文件上传(type="file")的表单,那么请求方式method 必须是 post,而且 enctype 必须是 multipart/form-data,
表示以二进制流的方式来处理表单数据
-->
<form action="handle.jsp" method="post" enctype="multipart/form-data">
    姓名:<input type="text" name="username"> <br>
    密码:<input type="password" name="password"> <br>
    <!--每个表单元素都有一个 value 属性,表示该表单元素提交的值,当然在表单元素中输入的值就是指这个 value-->
    性别:<input type="radio" name="sex" value="boy" checked="checked">男
    <input type="radio" name="sex" value="girl">女
    <br>
    爱好:<br>
    <input type="checkbox" name="hobby" value="basketball">篮球
    <input type="checkbox" name="hobby" value="swimming">游泳
    <input type="checkbox" name="hobby" value="music">音乐
    <input type="checkbox" name="hobby" value="dancing">跳舞
    <br>
    <!--type="file"表示文件上传-->
    头像:<input type="file" name="img"> <br>
    <input type="submit" value="提交">
    <input type="reset" value="重置">
</form>
</body>
</html>

input元素常用的属性:

1)checked:设置单选按钮或复选按钮是否被选中,该属性只有一个 checked 属性值

2)disabled:禁用 input 元素

3)maxlength:设置文本框允许输入的最大字符数

4)readonly:设置为只读

5)size:指定文档的宽度,type=”hidden” 元素不能设置

6)src:指定图像域所显示的图片的 URL 地址

示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>demo20</title>
</head>
<body>
<!--
对于包含文件上传(type="file")的表单,那么请求方式method 必须是 post,而且 enctype 必须是 multipart/form-data,
表示以二进制流的方式来处理表单数据
-->
<form action="handle.jsp" method="post" enctype="multipart/form-data">
    单行文本:<input type="text" name="username"> <br>
    只读的文本:<input type="text" name="name" value="张三" readonly> <br>
    <!--每个表单元素都有一个 value 属性,表示该表单元素提交的值,当然在表单元素中输入的值就是指这个 value-->
    性别:<input type="radio" name="sex" value="boy" checked>男
    <input type="radio" name="sex" value="girl">女
    <br>
    爱好:<br>
    <input type="checkbox" name="hobby" value="basketball">篮球
    <input type="checkbox" name="hobby" value="swimming">游泳
    <input type="checkbox" name="hobby" value="music">音乐
    <input type="checkbox" name="hobby" value="dancing">跳舞
    <br>
    图像域:
    <input type="image" src="images/1.jpg" width="200" height="200">
    <br>
    <!--type="file"表示文件上传-->
    头像:<input type="file" name="img"> <br>
    <input type="submit" value="提交">
    <input type="reset" value="重置">
</form>
</body>
</html>

(3)<label>标签:用于在表单元素中定义标签,有两种使用方式:

        ① 隐式使用 for 属性

        ② 显示关联,将普通文本,表单控件放在一个 <label> 中

示例:

(4)<button> 标签:用于定义按钮,常见的属性:

        ① disabled:禁用按钮,取值只能是 disabled

        ② name:按钮的唯一名称

        ③ type:按钮的类型,比如 submit,reset,button 中的一种

        ④ value:指定按钮的初始值,可以通过脚本来修改

示例:

(5)列表和下拉菜单,<select> 标签,主要包含的属性:

        ① disabled:禁用下拉菜单

        ② multiple:是否允许多选,取值只能是 multiple

        ③ size:指定列表框中同时显示多少个列表项

<select> 标签只能包含如下两个子元素:

1)<option>:列表框选项,常用的属性:

        a.disabled:禁用选项

        b.selected:选项是否被选中,取值只能是 selected

        c.value:该选项对应的请求参数值

2)<optgroup>:用于定义列表组,属性:

        a.label:选项组的标签

        b.disabled:禁用选项组中的所有选项

注意:input,button,select 标签都是行级标签

示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>demo23</title>
</head>
<body>
<form action="handle.jsp">
    <!--其中 <select> 的name属性值就是提交表单后请求参数的name属性,而选中的 option 选项的 value 值就是提交表单后请求参数的 value-->
    <select name="skill" id="skill">
        <option value="java">java语言</option>
        <option value="c++" selected>c++语言</option>
        <option value="c">c语言</option>
    </select>
    <!--multiple 允许多选,size:同时显示3个选项-->
    <select name="books" id="books" multiple size="3">
        <option value="java">java基础</option>
        <option value="android">Android 开发</option>
        <option value="javaee">JavaEE 企业级应用</option>
        <option value="html">HTML 基础</option>
    </select>
    <!--选项组:-->
    <select name="group" id="group">
        <optgroup label="Java体系丛书">
            <option value="java">Java基础</option>
            <option value="android">Android 开发</option>
            <option value="javaee">JavaEE 企业级应用</option>
        </optgroup>
        <optgroup label="HTML 体系丛书">
            <option value="html">HTML 基础</option>
            <option value="js">JavaScript 语言</option>
            <option value="jquery">jQuery 开发</option>
        </optgroup>
    </select>
    <input type="submit" value="提交">
</form>
</body>
</html>

(6)文本域 <textarea>:文本域可以定义多行文本,常见的属性:

        ① cols:指定文本域占多少列,即宽度,必填

        ② rows:指定文本域占多少行,即高度,必填

        ③ disabled:禁用文本域

        ④ readonly:只读

示例:

(7)H5新增的属性:

        ① placeholder 属性:显示提示信息,一旦用户开始输入,这些提示信息就会自动消失

        ② list 属性:该属性可以制作一个文本框和下拉菜单结合的组件,将表单元素的 list 属性指定为 datalist 中的 id 名即可, datalist 就相当于是一个看不见的 option。

示例:

(8)功能丰富的 input 元素,input 元素除了具有以上的 type 类型,还有如下的 type 类型:

① color:颜色选择器

② date:日期选择器

③ time:时间选择器

④ datetime:日期时间选择器

⑤ datetime-local:本地日期时间选择器

⑥ week:选择第几周

⑦ month:月份选择器

⑧ email:只允许输入邮件格式的文本

⑨ tel:只允许输入电话号码

⑩ url:只允许输入网络url地址

⑪ number:只允许输入数字

⑫ range:生成一个拖动条,属性有 min:最小值,max:最大值,step:拖动条的步长

示例:

11.H5 的表单验证,H5 之前我们都是通过 JavaScript 来完成表单验证,H5 提供了一些检验的属性可以进行表单元素合法性的验证,这些属性有:

        (1)required:表名该表单元素是必填项,取值只能是 required 或省略属性值

        (2)pattern:使用正则表达式来验证

        (3)min,max,step:这三个属性只对于数字类型,日期类型的 input 有效

示例:

12.关闭表单检验

(1)给 form 增加 novalidate 属性

(2)给 type=”submit” 的按钮设置 formnovalidate 属性

示例:

所有的表单验证就失效了。

13.多媒体支持

(1)<audio> 播放音频

(2)<video> 播放视频

(3)常用的属性:

        ① src:播放的音视频文件的 URL 地址

        ② autoplay:自动播放

        ③ controls:显示播放控制面板

        ④ loop:循环播放

        ⑤ preload:预加载,包含三个属性值:

                1)auto:预加载音视频

                2)metadata:只预加载元数据信息,如媒体字节数,第一帧,播放列表等等

                3)none:不执行预加载

        ⑥ poster:当 <video> 中的视频还没有播放的时候,可以通过 poster 显示一幅在播放前显示的图片

        ⑦ width:<video> 的宽度

        ⑧ height:<video> 的高度

示例:


网站公告

今日签到

点亮在社区的每一天
去签到