![JavaScript 从入门到项目实践(超值版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/691/26793691/b_26793691.jpg)
第4章
JavaScript开发基础——HTML知识
◎本章教学微视频:15个 45分钟
学习指引
HTML即超文本标记语言,是一种用来制作超文本文档的简单标记语言,是一种应用非常广泛的网页格式,也是被用来显示Web页面的语言之一。本章将详细介绍HTML的基础知识,主要内容包括HTML的文档结构、HTML的常用标签、HTML5的新增标签。
重点导读
- 掌握HTML的文档结构。
- 掌握HTML的常用标签。
- 掌握HTML5的新增标签。
4.1 基本的HTML文档
在一个HTML文档中,必须包含<html></html>标签(也称标记)对,并且该标签对需放在一个HTML文档的开始和结束位置。即每个文档以<html>开始,以</html>结束。<html>与</html>之间通常包含两个部分,分别是<head></head>标签对和<body></body>标签对。<head></head>标签对内包含HTML文件头部信息,例如文档标题、样式定义等。<body></body>标签对内包含文档主体部分,即网页内容。需要注意的是,<html>标签不区分大小写。
注:如果标签是以成对的方式显示,就说是标签对,在介绍一个标签对的属性或方式时,习惯上是以开始标签来说明,而不是以标签对方式来说明。
为了便于读者从整体把握HTML文档的结构,下面通过一个HTML页面来介绍HTML页面的整体结构,示例代码如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P61_216108.jpg?sign=1738823692-abUtXt2iptwO0PEVmOWpju9HBo42CQIt-0-f73e1eafecf3988c0c8a9ce416a14950)
从上述代码可以看出,一个基本的HTML页面由以下几个部分构成。
(1)<!DOCTYPE>声明必须位于HTML5文档中的第一行,也就是位于<html>标签之前。该标签用于告知浏览器文档所使用的HTML规范。它是一条指令,告诉浏览器编写页面所用的标签的版本。由于HTML5版本还没有得到浏览器的完全认可,后面介绍时还采用以前通用的标准。
(2)<html></html>对说明本页面是使用HTML语言编写的,可使浏览器软件能够准确无误地解释、显示。
(3)<head></head>对用于定义HTML的头部信息,头部信息不显示在网页中。在该标签内可以嵌套其他标签,用于说明文件标题和整个文件的一些公用属性,如通过<style>标签定义CSS样式表,通过<script>标签定义JavaScript脚本文件。
(4)<title></title>标签对内的内容是HTML文件头部信息中的重要组成部分,它包含的内容显示在浏览器的窗口标题栏中。如果一个HTML文件没有设置<title></title>标签对内的内容,浏览器标题栏就只显示本页的文件名。
(5)<body></body>标签对用来定义HTML页面显示在浏览器窗口的实际内容。例如,页面中的文字、图像、动画、超链接以及其他HTML相关的内容都是在该标签对中定义的。
4.1.1 文档标签
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P62_167080.jpg?sign=1738823692-n7k0anbRHeWqdfzZ4fskWddzEcvoNtEY-0-37aaceb02d0b862480273b05ccd1e960)
一般HTML的页面以<html>标签开始,以</html>标签结束。HTML文档中的所有内容都应位于这两个标签之间。如果这两个标签之间没有内容,则该HTML文档在IE浏览器中的显示将是空白的。
<html>标签的语法格式如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P62_216110.jpg?sign=1738823692-ewQb0PuXEqTbnyU5VIDFP4txI7sFkkiy-0-f43793d1627847cf8d3f9f8ebaea328e)
4.1.2 头部标签
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P62_167081.jpg?sign=1738823692-C6GHH46USBAaci0dXc1SkkqE6YOMgf1K-0-fee466a59dca6bcb5cc8c67353859492)
头部(<head></head>)标签对内包含的是文档的标题信息,如标题、关键字、说明以及样式等。除了标题内容外,一般位于头部标签中的内容不会直接显示在浏览器中,而是通过其他的方式显示。
(1)内容。
头部标签中可以嵌套多个标签,如<title>、<base>、<isindex>和<script>等,也可以添加任意数量的属性,如<script>、<style>、<meta>或<object>等。除了<title>标签外,嵌入的其他标签可以使用多个。
(2)位置。
在所有的HTML文档中,头部标签不可或缺,但是其起始和结尾标签却可以省去。在各个HTML的版本文档中,头部标签一直紧跟<body>标签,但在框架设置文档中,其后跟的是<frameset>标签。
(3)属性。
<head>标签的属性profile给出了元数据描写的位置,从中可以看到其中的meta和lind元素的特性。该属性的形式没有严格的格式规定。
4.1.3 主体标签
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P62_167082.jpg?sign=1738823692-2eOYCHUG3vMpRg75GWWcCmTgZqCWhedo-0-c27d036bad3e4eb7e1f4d7dca53b6d7b)
主体标签(<body>…</body>)包含了文档的内容,用若干个属性来规定文档中显示的背景和颜色。
主体标签可能用到的属性如下。
(1)background=url(文档的背景图像,url指图像文件的路径)。
(2)bgcolor=color(文档的背景色)。
(3)text=color(文本颜色)。
(4)link=color(链接颜色)。
(5)vlink=color(已访问的链接颜色)。
(6)alink=color(被选中的链接颜色)。
(7)onload=script(文档已被加载)。
(8)onunload=script(文档已推出)。
为该标签添加属性的代码格式如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P63_216112.jpg?sign=1738823692-VMtIh7xavcsr1y6cWatAM8go2PHBp3sf-0-b979ba821ec938c28d730533620bb7ce)
4.2 HTML的常用标签
HTML文档是由标签组成的文档,要熟练掌握HTML文档的编写,就要先了解HTML的常用标签。
4.2.1 标题标签<h1>到<h6>
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P63_167135.jpg?sign=1738823692-5brFQzCqXkPxLSN48yWN6Jdt0wKlpl2V-0-820f57faec574e1e6e50a6e79bb2e328)
在HTML文档中,文本的结构除了以行和段的形式出现之外,还可以标题的形式存在。通常一篇文档最基本的结构,就是由若干不同级别的标题和正文组成的。
HTML文档中包含有各种级别的标题,各种级别的标题由元素<h1>到<h6>来定义,其中<h1>代表1级标题,级别最高,字号也最大,其他标题元素依次递减,<h6>级别最低。
下面具体介绍一下标题的使用方法。
【例4-1】(实例文件:ch04\Chap4.1.html)标题标签的使用。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P63_216114.jpg?sign=1738823692-T56vQtvvcSlplbV8ydbCgq64WTwF6h4Y-0-eade0944932ae55bd2d6aea790c2c369)
相关的代码示例请参考Chap4.1.html文件,在IE浏览器里面运行的结果如图4-1所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P63_167128.jpg?sign=1738823692-wS6E1Jh0I9zV27B3v7fDNpq0zxfUslaT-0-51c71c438c1553fa9c5f7ad99622bdca)
图4-1 标题标签的应用
4.2.2 段落标签<p>
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-99.jpg?sign=1738823692-My6txYgJzKjeXJFvMpvaha7Rn3QtZVUg-0-c26a4faad74edad8c0d1032f20a4b2e4)
段落标签<p>用来定义网页中的一段文本,文本在一个段落中会自动换行。段落标签是双标签,即<p> 和</p>,在开始标签<p>和结束标签</p>之间的内容形成一个段落。如果省略掉结束标签,从<p>标签开始,那么直到在下一个段落标签出现之前的文本,都将被默认为同一段段落内。
【例4-2】(实例文件:ch04\Chap4.2.html)段落标签的使用。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P64_216116.jpg?sign=1738823692-TL4aHSlKAmalOq6bfP4ibKPf8OJspkxj-0-dc128988d7fa94df171c44b1a1c1b570)
相关的代码示例请参考Chap4.2.html文件,在IE浏览器里面运行的结果如图4-2所示。可以看出,<p>标签将文本分成了3个段落。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P64_167199.jpg?sign=1738823692-bqtt2FZDZ3ApONC9dtgUA1gDoi9qXyGZ-0-eaa835f17e06dee57cc043f3479e0bd1)
图4-2 段落标签的应用
4.2.3 换行标签<br>
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P64_167209.jpg?sign=1738823692-9oJfR3wSQ2q8y1fcTw4BATeKKk9Bxaqp-0-b6be30278e532e825eaf1f450bb76a36)
使用换行标签<br>可以给一段文字换行。该标签是一个单标签,没有结束标签,作用是将文字在一段内强制换行。一个<br>标签代表一次换行,连续的多个标签可以实现多次换行。使用换行标签时,在需要换行的位置添加<br>标签即可。
【例4-3】(实例文件:ch04\Chap4.3.html)换行标签的使用。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P64_216120.jpg?sign=1738823692-gAzGFSS7zmT6bxN6KUt4IsFE9DAgvM5i-0-75a69c2c98f0437d1e916f866c26ec57)
相关的代码示例请参考Chap4.3.html文件,在IE浏览器里面运行的结果如图4-3所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P65_167249.jpg?sign=1738823692-AQmzifQmMSIet2zFNR6vAFrRuzTNuxSe-0-1a575d9c3a748838a758ff59a2702798)
图4-3 换行标签的应用
4.2.4 链接标签<a>
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P65_167267.jpg?sign=1738823692-T5vpwg96t8WRwYCyncTZlBwrEbJQakh7-0-9a856cca0741c3e31182053d133077e8)
链接标签<a>是网页中最为常用的标签,主要用于把页面中的文本或图片链接到其他的页面、文本或图片。建立链接的要素有两个,即可被设置为链接的网页元素和链接指向的目标地址。链接的基本结构如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P65_167258.jpg?sign=1738823692-XBDkTUGRXFnHnQpwYdVb0hWSXlAO5HHc-0-f0dcc14236141f21c749e06135f1b071)
1.设置文本和图片的链接
可被设置为链接的网页元素是指网页中通常使用的文本和图片。文本链接和图片链接通过<a>和</a>标签来实现,将文本或图片放在<a>开始标签和</a>结束标签之间即可建立文本和图片链接。
【例4-4】(实例文件:ch04\Chap4.4.html)设置文本和图片的链接。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P65_216123.jpg?sign=1738823692-IJ8pxOowHqf5Yuojm4vMX5fZPP20m0oK-0-1337b53b4ba111f7bb945186127c5830)
相关的代码示例请参考Chap4.4.html文件,在IE浏览器里面运行的结果如图4-4所示,在其中可以查看到使用链接标签设置文本和图片的效果。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P65_167260.jpg?sign=1738823692-TfNOFPeOAfkw7TcNQ1gZcMujbeOZyJyf-0-b8898df0574e4ce5f14a970b2f2ede81)
图4-4 链接标签的应用
2.设置电子邮件路径
电子邮件路径用来链接一个电子邮件的地址。其写法如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P66_167318.jpg?sign=1738823692-iwiF5PiUzVmbefNaunVfQMvYj1fpu7VC-0-f9b74c8eb7c66ca5c44e3c288e1a089b)
【例4-5】(实例文件:ch04\Chap4.5.html)设置电子邮件路径。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P66_216125.jpg?sign=1738823692-v8twiYdGGcHn7hvv9uSE26qAgZQ5galV-0-e5e964ebc9b15c8727d0f0e35458ecca)
相关的代码示例请参考Chap4.5.html文件,然后双击该文件,就可以在IE浏览器中查看到使用链接标签设置电子邮件路径的效果。当单击含有链接的文本时,会弹出一个发送邮件的对话框,显示效果如图4-5所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P66_167320.jpg?sign=1738823692-txxvfip99HQNmI2jQy0gdGt9t1Q29s85-0-1b519e21aba94647900060821338d7e0)
图4-5 设置电子邮件的路径
4.2.5 列表标签<ul>
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P66_167329.jpg?sign=1738823692-DIL4RUyrKQJquhyIcYMjnTbSlZDphjNG-0-a69e53e447502b3119ea5e5b05441b3e)
文字列表可以有序地编排一些信息资源,使其结构化和条理化,并以列表的样式显示出来,以便浏览者能更加快捷地获得相应信息。HTML中的文字列表如同文字编辑软件Word中的项目符号和自动编号。
1.建立无序列表
无序列表相当于Word中的项目符号,无序列表的项目排列没有顺序,只以符号作为分项标识。无序列表的建立使用的是一对标签<ul>和</ul>,其中每一个列表项的建立还要一对标签<li>和</li>。其结构如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P66_216127.jpg?sign=1738823692-65mRDbEhokenAd1PJ06IAChucPauCJz9-0-c9ea74f3872e3d178e86b10d4689e78c)
在无序列表结构中,使用<ul>和</ul>标签表示该无序列表的开始和结束,<li>则表示该列表项的开始。在一个无序列表中可以包含多个列表项,并且<li>的结束标签可以省略。
下面实例介绍了使用无序列表实现文本的排列显示。
【例4-6】(实例文件:ch04\Chap4.6.html)建立无序列表。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P67_216129.jpg?sign=1738823692-QURjj3hXtKJCRDmGlzREqAAViN42yRNI-0-a75712e1fc500b59ec155631f5e537ca)
相关的代码示例请参考Chap4.6.html文件,然后双击该文件,就可以在IE浏览器中查看到使用列表标签建立无序列表的效果,如图4-6所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P67_167403.jpg?sign=1738823692-64fB9bgym368mF28wQlKG3etGEHhKBko-0-42a4e0787ab95c1d083396526b06a0d6)
图4-6 无序列表标签的应用
通过观察发现,无序列表项中,可以嵌套一个列表。如代码中的“系统分析”列表项和“伪网页草图”列表项中都有下级列表,因此在这对<li>和</li>标签间又增加了一对<ul>和</ul>标签。
2.建立有序列表
有序列表类似于Word中的自动编号功能。有序列表的使用方法和无序列表的使用方法基本相同。它使用的标签是<ol>和</ol>,每个列表项前使用的标签是<li>和</li>,且每个项目都有前后顺序之分,多数情况下,该顺序使用数字表示。其结构如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P68_216131.jpg?sign=1738823692-TurnJxkTqiKKQ6UjdrwpoARuZr2gd7bM-0-e1e800d5c71c02cec83aea01a0e90d89)
【例4-7】(实例文件:ch04\Chap4.7.html)建立有序列表。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P68_216133.jpg?sign=1738823692-PEiO7Fzf06FesTRCGdDgg9OyLS3ceUD3-0-49fd1019422ceedd1172b9afe3be9c35)
相关的代码示例请参考Chap4.7.html文件,然后双击该文件,就可以在IE浏览器中查看到使用列表标签建立有序列表后的效果了,如图4-7所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P68_167473.jpg?sign=1738823692-CStLIOtf0Zq8tQaUZWzK5gYcVi3TFvOB-0-9aa3789ee17fc417455de66b90b02c78)
图4-7 有序列表标签的应用
4.2.6 图像标签<img>
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P68_167543.jpg?sign=1738823692-6vS3RJMw6hYsVmPJ4THpOItIDS4CQJ9P-0-c5d0d1fa58b472068a281161885a94b0)
图像可以美化网页,插入图像时可使用图像标签<img>。<img>标签的属性及描述如表4-1所示。
表4-1 <img>标签的属性及描述
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-T68_216136.jpg?sign=1738823692-Q2Ub15sOr2koD6s2ySNiVbILoOHIYSg3-0-b0cda58c6c03a4cba5ccc74e55fd3173)
1.插入图片
src属性用于指定图片源文件的路径,它是<img>标签必不可少的属性。其语法格式如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P69_167634.jpg?sign=1738823692-s8mJwaboF7qvjAxCQcpgRaIk3JU0CkwM-0-6eee8c89eca931d2fc35419a2e12b344)
图片的路径既可以是绝对路径,也可以是相对路径。
【例4-8】(实例文件:ch04\Chap4.8.html)在网页中插入图片。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P69_216142.jpg?sign=1738823692-4UAbfDEuoE5yi8j8vuet0VBlwtmntWrs-0-815d38a1cb32a93c567e76425b1a452f)
相关的代码示例请参考Chap4.8.html文件,然后双击该文件,就可以在IE浏览器中查看到使用<img>标签插入图片后的效果,如图4-8所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P69_167636.jpg?sign=1738823692-1YunsFoxxhg2o5kcoi1bwSdCY38JROu3-0-23985ce299f1f7d09cee40c10ad91669)
图4-8 图像标签的应用
2.从不同位置插入图片
在插入图片时,用户可以将其他文件夹或服务器中的图片显示到网页中。
【例4-9】(实例文件:ch04\Chap4.9.html)从不同位置插入图片。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P69_216144.jpg?sign=1738823692-RQDjot6s03SiCxOtY8IYxof2vId9su8t-0-3c6507b5cc9ecd826a1e3dc79e70c88c)
相关的代码示例请参考Chap4.9.html文件,然后双击该文件,就可以在IE浏览器中查看到使用<img>标签插入图像后的效果,如图4-9所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P70_167697.jpg?sign=1738823692-SBMHGgUVNMZHBjxJMmW6FxburuG0g6Cn-0-a97877e073c78471d99a492b57c08ea4)
图4-9 从不同位置插入图片
3.设置图片的宽度和高度
在HTML文档中,还可以设置插入图片的显示尺寸。设置图片尺寸可通过图片的属性width(宽度)和height(高度)来实现。
【例4-10】(实例文件:ch04\Chap4.10.html)设置图片在网页中的宽度和高度。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P70_216147.jpg?sign=1738823692-NQXjvpzjOzBL3fSIQpIDB78uozaRVrs3-0-3ed2021a6cda055e717609c0eb1ec48f)
相关的代码示例请参考Chap4.10.html文件,然后双击该文件,就可以在IE浏览器中查看到使用<img>标签设置的图片的宽度和高度效果,如图4-10所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P70_167705.jpg?sign=1738823692-8ktVjuXwVuQg1NFUB5sn082DSFdM7OVz-0-1c422a6467c515aa5355c6967ec2222c)
图4-10 设置图片宽度与高度
从运行结果中可以看到,图片的显示尺寸是由width和height控制的。当只为图片设置一个尺寸属性时,另外一个尺寸就以图片原始的长宽比例来显示。图片的尺寸单位可以选择百分比或数值。百分比为相对尺寸,数值为绝对尺寸。
4.2.7 表格标签<table>
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P71_167781.jpg?sign=1738823692-NF6E3tflqoYvROLdg34XHAfGz0rKHkxQ-0-4de2e898f84e2cae2d45bdc021775889)
HTML中的表格标签有以下3个,下面详细进行介绍。
(1)<table>…</table>标签。
<table>标签用于标识一个表格对象的开始;</table>标签标识一个表格对象的结束。一个表格中,只允许出现一对<table>和</table>标签。
(2)<tr>…</tr>标签。
</tr>用于标识表格一行的开始;</tr>标签用于标识表格一行的结束。表格内有多少对<tr>和</tr>标签,就表示表格中有多少行。
(3)<td>…</td>标签。
<td>标签用于标识表格某行中的一个单元格的开始;</td>标签用于标识表格某行中的一个单元格的结束。<td>和</td>标签书写在<tr>和</tr>标签内。一对<tr>和</tr>标签内有多少对<td>和</td>标签,就表示该行有多少个单元格。
在HTML中,最基本的表格必须包含一对<table>和</table>标签、一对或几对<tr>和</tr>标签以及一对或几对<td>和</td>标签。一对<table>和</table>标签定义一个表格,一对<tr>和</tr>标签定义一行,一对<td>和</td>标签定义一个单元格。
【例4-11】(实例文件:ch04\Chap4.11.html)定义一个4行3列的表格。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P71_216149.jpg?sign=1738823692-25gFpfYSY0I2ZJDe4mhLalYT7foM1diV-0-b31800955dee35cc704ad8c7750c439c)
相关的代码示例请参考Chap4.11.html文件,然后双击该文件,就可以在IE浏览器中查看到使用表格标签插入表格后的效果,如图4-11所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P72_167870.jpg?sign=1738823692-cnadfwLDkDQERRylAtRB15MT3DWk31Za-0-50e20deced88fe41c6e73c8831220679)
图4-11 定义表格
4.2.8 表单标签<form>
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P72_167879.jpg?sign=1738823692-30qgGvVOT6BwU5PbndTgB95RxuOec3bN-0-a5ec7988273d5cdd88a4166fdca17fd9)
表单主要用于收集网页上浏览者的相关信息,其标签为<form>和</form>。表单的基本语法格式如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P72_216151.jpg?sign=1738823692-qkkbtvJBBRSWDqY9MPIRqBGPeFCFpZ6k-0-8555acddd1d6399c166043b627318599)
其中,action=“url”用于指定处理提交表单的格式,它可以是一个URL地址或一个电子邮件地址。method=“get|post”用于指明提交表单的HTTP方法。enctype=“mime”用于指明把表单提交给服务器时的互联网媒体形式。表单是一个能够包含表单元素的区域。通过添加不同的表单元素,将显示不同的效果。
下面介绍如何使用表单标签开发一个简单网站的用户意见反馈页面。
【例4-12】(实例文件:ch04\Chap4.12.html)开发用户意见反馈页面。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P72_216153.jpg?sign=1738823692-Te4RwHHejIJoMj0O8RyxOy44O9HZgpW6-0-3897086c29496f6ad5a521045c4e28f1)
相关的代码示例请参考Chap4.12.html文件,然后双击该文件,就可以在IE浏览器中查看到使用表单标签插入表单后的效果,如图4-12所示。可以看到,创建的用户反馈表单包括一个标题“用户意见反馈页面”,还包括“姓名”“性别”“年龄”“联系电话”“电子邮件”“联系地址”等内容。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P73_167911.jpg?sign=1738823692-uhorrnizfARFQ25WH4j87r26UKCbIHqX-0-885df09598ac4d0b81c9c2d4828062c0)
图4-12 表单标签的应用
4.3 HTML5的新增标签
为了更好地处理今天的互联网应用,HTML5添加了很多新标签及功能,如多媒体标签<audio>和<video>、绘制图形标签<canvas>等。
4.3.1 <audio>标签
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P73_167922.jpg?sign=1738823692-C6u4FIfs8oK7UahcXZHyERdICOaaapHk-0-26972bbf6bb7bf29c94e6d0e8d4be64f)
<audio>标签主要是定义播放声音文件或者音频流的标准。它支持3种音频格式,分别为Ogg、MP3和WAV。
如果需要在HTML5网页中播放音频,输入的基本格式如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P73_216156.jpg?sign=1738823692-OnLnBYhr9UkGp2oH9qlMViurIX1tCUfk-0-61fb01d394a5e4c18aacf5b8aed94359)
其中,src属性规定要播放的音频的地址,controls属性是供添加播放、暂停和音量控件的属性。
另外,在<audio>和</audio>之间插入的内容是供不支持audio元素的浏览器显示的。
【例4-13】(实例文件:ch04\Chap4.13.html)在网页中插入音频。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P73_216158.jpg?sign=1738823692-ajnN3uvqB9TLiHeJWjv9VqGbRVVzpIzq-0-826596158324b487c107062cca9ff67c)
相关的代码示例请参考Chap4.13.html文件,然后双击该文件,如果用户的浏览器是IE 11.0以前的版本,浏览效果如图4-13所示。可见,IE 11.0以前的浏览器版本不支持<audio>标签。
在IE 11.0中浏览,效果如图4-14所示。可以看到加载的音频控制条并听到声音,此时用户还可以控制音量的大小。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P74_167963.jpg?sign=1738823692-pLtsYbDDzSu11NFtuPJwa9Jte43HRMHS-0-151dbba51937bcca6e4228b9d2bf6082)
图4-13 插入音频文件
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P74_167964.jpg?sign=1738823692-stZofdLFQXjovCjyyAzE0J0AGOtU7jby-0-456ca6726eae99286525ccdbc3e16767)
图4-14 播放音频文件
4.3.2 <video>标签
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P74_167977.jpg?sign=1738823692-JvbJL3EyGKZr9diuxyCLTwEORcRLwjFR-0-7c8085d8b65834eb3608e12818b7b45f)
<video>标签主要是定义播放视频文件或者视频流的标准。它支持3种视频格式,分别为Ogg、WebM 和MPEG 4。
如果需要在HTML5网页中播放视频,输入的基本格式如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P74_216165.jpg?sign=1738823692-DlaBxZbSb8NOyMuTdHuTdJ70sKjT5FG2-0-6f35aaff421a298669a22438a19b75e3)
其中,在<video>与</video>之间插入的内容是供不支持video元素的浏览器显示的。
【例4-14】(实例文件:ch04\Chap4.14.html)在网页中插入视频。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P74_223204.jpg?sign=1738823692-JcXQmNTJPTCE0bv18r8YPNIUfCaM7j7S-0-619e570bd0bd44d67ef25f2a9d61e56a)
相关的代码示例请参考Chap4.14.html文件,然后双击该文件,如果用户的浏览器是IE 11.0以前的版本,浏览效果如图4-15所示。可见,IE 11.0以前版本的浏览器不支持<video>标签。
在IE 11.0中浏览,效果如图4-16所示,可以看到加载的视频控制条界面。单击“播放”按钮,即可查看视频的内容,同时用户还可以调整音量的大小。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P74_167973.jpg?sign=1738823692-K9Y9K1IMxWP6vjKHudIs7fREdMjgi4nn-0-d8ad0ee6656fb6bec3fac8c51ea8eaf0)
图4-15 不支持<video>标签
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P74_167974.jpg?sign=1738823692-hhHDKa1ZjUb760GCnzIW0i6PvVCiSe2P-0-c199a8372686e3925161123893f27655)
图4-16 预览视频效果
4.3.3 <canvas>标签
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P75_168035.jpg?sign=1738823692-VXTXDvNb5ClL1m2VpzpWBZpKfp5xHQxU-0-bb306586afac8d8fd41c6e33c4c53139)
<canvas>标签是一个矩形区域,它包含width和height两个属性,分别表示矩形区域的宽度和高度,这两个属性都是可选的,并且都可以通过CSS来定义,其默认值是300px和150px。
<canvas>标签在网页中的常用格式如下:
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P75_216171.jpg?sign=1738823692-WWb5ppJvRISeWqJOG4SXqp7rIjbFEWRm-0-9ef739f57b4c16c210cfda39c35a17a8)
上面的示例代码中,id表示画布对象名称,width和height分别表示宽度和高度。最初的画布是不可见的,此处为了观察这个矩形区域,使用CSS样式,即<style>标签。style表示画布的样式。如果浏览器不支持<canvas>标签,会显示画布中间的提示信息。
1.添加canvas的步骤
画布canvas本身不具有绘制图形的功能,它只是一个容器,如果读者对Java语言非常了解,就会发现HTML5的画布和Java中的Panel面板非常相似,都可以在容器中绘制图形。既然画布元素放好了,那么就可以使用脚本语言JavaScript在网页上绘制图形了。
使用canvas结合JavaScript绘制图形,一般情况下需要下面几个步骤。
第一步:JavaScript使用id来寻找canvas元素,即获取当前画布对象。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P75_216173.jpg?sign=1738823692-C8EuA1ZMwn1JiDneIF3KrI122ZDe70nz-0-4de2746dacc9857170d4d2733ff7a07b)
第二步:创建context对象。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P75_216175.jpg?sign=1738823692-gkF2mKjXKcV1CuKSU7gsaW4YoqEJ719R-0-a5d08f7031702d56aca4e863dd219213)
getContext()方法返回一个指定contextId的上下文对象,如果指定的id不被支持,则返回null,当前唯一被强制必须支持的是2d,也许在将来会有3d。注意,指定的id是大小写敏感的。对象cxt建立之后,就可以拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。
第三步:绘制图形。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P75_216177.jpg?sign=1738823692-M3zthNPBnAeoHNTRkoe5fWLeUKXuPzQ4-0-2f2a274385fd8c3015e546d244dfe94c)
fillStyle()方法将其染成红色,fillRect()方法规定了形状、位置和尺寸。这两行代码绘制一个红色的矩形。
2.绘制基本形状
画布canvas结合JavaScript可以绘制简单的矩形,还可以绘制一些其他的常见图形,例如直线、圆等。下面以绘制矩形和圆形为例,来介绍使用canvas绘制基本形状的方法。
用canvas和JavaScript绘制矩形时,涉及一个或多个方法,这些方法如表4-2所示。
表4-2 绘制矩形的方法
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-T75_216180.jpg?sign=1738823692-PleYwHDTy7GnFkNiKhiaBSUAJQjg5ydY-0-a3b3d14263b4727e5367bb983c75e9c8)
【例4-15】(实例文件:ch04\Chap4.15.html)绘制矩形。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P76_216182.jpg?sign=1738823692-Fc9HFGWukmm27hK8bKW0agcAA98sdp4m-0-babdf51c10fc72016cfc0d77eadeced6)
相关的代码示例请参考Chap4.15.html文件,然后双击该文件,就可以在IE浏览器中查看到绘制的矩形,效果如图4-17所示。可以看到,网页中,在一个蓝色边框内显示了一个蓝色矩形。
提示:上面的代码中,定义了一个画布对象,其id名称为myCanvas,高度和宽度都为500像素,并定义了画布边框的显示样式。代码中首先获取画布对象,然后使用getContext()方法获取当前2d的上下文对象,并使用fillRect()方法绘制一个矩形。其中涉及一个fillStyle属性,fillStyle用于设定填充的颜色、透明度等,如果设置为rgb(200,0,0),则表示一个不透明颜色;如果设置为rgba(0,0,200,0.5),则表示为一个透明度50%的颜色。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P76_168084.jpg?sign=1738823692-zJ6YLnjrsgEFidUWzVbjXJ1vJwyhTd4L-0-fff617497a3b08610930b79fc85b5350)
图4-17 绘制矩形
用canvas和JavaScript绘制圆形时,涉及一个或多个方法,这些方法如表4-3所示。
表4-3 绘制圆形的方法
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-T76_216186.jpg?sign=1738823692-vyfJeFT0xuH7N3KXSaUc99294E7RFODq-0-ea21627357f288fe908b10241a3da505)
路径是绘制自定义图形的好方法,在canvas中,通过beginPath()方法开始绘制路径,这个时候就可以绘制直线、曲线等,绘制完成后,调用fill()和stroke()方法完成填充和边框设置,通过closePath()方法结束路径的绘制。
【例4-16】(实例文件:ch04\Chap4.16.html)绘制圆形。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P77_216188.jpg?sign=1738823692-NRDz557p6IkW7s3GdCftDHNzEop8qg9W-0-97e448bc964f940d62c4dad8887ac43a)
相关的代码示例请参考Chap4.16.html文件,然后双击该文件,就可以在IE浏览器中查看到绘制的圆形,效果如图4-18所示。可以看到,在网页中,一个蓝色边框内显示了绘制的圆形。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P77_168195.jpg?sign=1738823692-vhyxm3e0b7oC0pCoiYnzExsKpcaWdQVk-0-2ce31c20c0d2c1cf99c758c99da8c323)
图4-18 绘制圆形
4.4 典型案例——制作日程表
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P77_168204.jpg?sign=1738823692-F6rCAN3Xop0iOfwbGKYWSEMeTacgaQdt-0-2616caea795de2492f59e67871467639)
通过在记事本中输入HTML语句,可以制作出多种多样的页面效果。本节将以制作日程表为例,介绍HTML的综合应用方法,其具体的操作步骤如下。
第一步:打开记事本,在其中输入以下代码。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P77_216190.jpg?sign=1738823692-4F4btlcZ6sh3piY4dGjoz1yFayYBgZ3a-0-6faf5bfdc2820978d8b5ebbaf163be37)
输入代码后的记事本页面,如图4-19所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P78_216232.jpg?sign=1738823692-2MgORRu1AjS8NCTEMf5DGiKWBRJofmvL-0-958e8f5d7ca06d4ad06918dec126b5e7)
图4-19 在记事本中输入的代码
第二步:在</head>标签之前输入以下代码。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P78_216251.jpg?sign=1738823692-ZHXddK3zYkFetNUSlpWEOiEIxFfJ3Y8P-0-341a48d552e92fe7aad5e6f9950bec17)
输入代码后的记事本页面,如图4-20所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P78_216240.jpg?sign=1738823692-5FRZdNtYj5PeBZqMI1P4owitmyEiZiMp-0-5c49284e756c2c2a18de40cc7386fadf)
图4-20 输入CSS代码
第三步:在</style>标签之前输入以下代码。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P78_216253.jpg?sign=1738823692-jusYABdFCh0Tr2rZO05P0H0RMonxOXfT-0-c3eac8387616b9c825b4b88f6afe0388)
输入代码后的记事本页面,如图4-21所示。
第四步:在<body>和</body>标签之间输入以下代码。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P78_216248.jpg?sign=1738823692-uhQCeccQdyw8ntikzha0cmViuko084cH-0-01f07a2f115cdfdabfe4ca2654d38ba5)
输入代码后的记事本页面,如图4-22所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P79_168300.jpg?sign=1738823692-049dlZ1uT3JbvDB4Ahrg241VdbjAUxbZ-0-6e5f71a241aadb4ddcfd183d7426349f)
图4-21 输入控制字体样式的代码
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P79_168307.jpg?sign=1738823692-h8tywVLd72TL6hpEjCCFkE37UWzpkUHF-0-d408b4046f6fb851c5f954a99f23f541)
图4-22 输入块级代码
第五步:在</body>标签之前输入以下代码。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P79_216256.jpg?sign=1738823692-Ibmw7clstHYrvBeG2qPeM1t0YkUPkmfz-0-c57823c71679af10b02017f6f7c6a89b)
输入代码后的记事本页面如图4-23所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P80_168386.jpg?sign=1738823692-mD1oBX1CvSB6Cmb3Q1Du1GVSrxDBnKAD-0-ba0ea50d569b71e865d691f09152fe8f)
图4-23 输入代码后的记事本页面
第六步:在记事本中选择“文件”→“保存”菜单命令,弹出“另存为”对话框,设置保存文件的位置,在“文件名”下拉列表框中输入“制作日程表.html”,然后单击“保存”按钮,如图4-24所示。
第七步:双击打开保存的制作日程表.html文件,即可看到制作的日程表,如图4-25所示。
第八步:如果需要在日程表中添加工作内容,可以用记事本打开制作日程表.html文件,在代码段“<td style="text-align: center"> </td>”的 之前输入内容即可。如要输入星期一完成的第一件工作内容“完成校对”,可在如图4-26所示的位置输入。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P81_168398.jpg?sign=1738823692-r7jWcifLsncSxfb0JZsXPQvHEZpAsPq2-0-eecee947621aa9647108555f42551c05)
图4-24 “另存为”对话框
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P81_168405.jpg?sign=1738823692-GGa14EPPyVDOkoAh9fOJAOlJrpjC81ut-0-5455f8ab11bc4400b13a6535292d9f4a)
图4-25 制作日程表
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P81_168412.jpg?sign=1738823692-nMPyP1CVY4oJk7ny6g6YtVVXzx0UhoR8-0-1062d31f49ebb2d2c02deafef01190dd)
图4-26 输入文字
第九步:保存后打开文档,即可在浏览器中看到添加的工作内容,如图4-27所示。
![](https://epubservercos.yuewen.com/544327/15253387304115506/epubprivate/OEBPS/Images/Figure-P82_168437.jpg?sign=1738823692-FniZRp5BcGdwLrOUaX6lFICGzUkD579q-0-5a5a9b9b3e1d46485fa4256833c5c84a)
图4-27 最终的日程表预览效果
4.5 就业面试技巧与解析
4.5.1 面试技巧与解析(一)
面试官:使用记事本编辑HTML文件时应注意哪些事项?
应聘者:很多初学者在保存文件时,没有将HTML文件的扩展名改为.html或.htm,导致文件还是以.txt为扩展名,因此,无法在浏览器中查看。如果是通过右击创建的记事本文件,那么在给文件重命名时,一定要以.html或.htm作为文件的扩展名。特别要注意的是,当Windows系统的扩展名被隐藏时,更容易出现这样的错误。为避免这种情况的发生,可以在“文件夹选项”对话框中查看是否显示文件扩展名。
4.5.2 面试技巧与解析(二)
面试官:如何解决HTML5浏览器支持问题?
应聘者:浏览器对HTML5的支持需要一个过程,一款浏览器暂时还不能支持HTML5定义的全部内容。要想解决浏览器现在的支持问题,首先尽量使用大部分浏览器支持的HTML5元素及对象,其次可以分别将多个浏览器支持的对象格式融入代码中,如不同浏览器对音频文件格式支持不同,将多种多媒体文件融入代码中,这样不同的浏览器会自动选择自己支持的格式打开。