【Web笔记】Html学习手册

HTML简介

HTML是**超文本标记语言(HyperText Markup Language)**的简称

HTML的前世今生

从初期的网络诞生后,已经出现了许多HTML版本:

版本发布时间
HTML1991
HTML+1993
HTML 2.01995
HTML 3.21997
HTML 4.011999
XHTML 1.02000
HTML52012
XHTML52013

HTML定义

  • HTML语言用于编写各种网页

  • HTML语言可以在网页里说明文字、图形、动画、声音、表格、链接等

  • HTML不是一门编程语言,而是一种标记语言

HTML编辑器

常用的HTML编辑器有下列几款:


HTML结构

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
	</head>
	<body>
        <h1>这是一个文本</h1>
        <p>这是一个段落</p>
        ....
	</body>
</html>

这是一个文本

这是一个段落

....

代码分析

  • DOCTYPE 声明了文档

  • 标签 <html> 与 </html> 描述了文档类

  • 标签 <head> 与 </head>是网页的头部表示(一般不可视)

  • 标签 <body> 与 </body> 为可视化网页内容

  • 标签 <h1> 与 </h1> 作为一个标题使用

  • 标签 <p> 与 </p> 作为一个段落显示

HTML标签

  • 根据上面的代码,我们可以看到HTML代码都是由一个个<…>组成的

  • 我们称代码里的<…>为HTML标签

  • 在HTML中的标签分为两种

  • 双标签(一般标签):由开始标签<…>和结束标签</…>组成的 例:<html>…</html>

  • 单标签(自闭和标签):由一个标签组成的<…/> 例:<img … />

<DOCTYPE>声明

  • DOCTYPE对大小写是不敏感的,以下4种均正确
    <!DOCTYPE html><!--推荐-->
    <!DOCTYPE HTML>
    <!doctype html>
    <!Doctype Html>
    

<head>(头部)标签

  • <head>标签包含了所有的头部标签元素。在 <head>元素中你可(scripts), 样式文件(CSS),及各种 meta 信息。

    head中一般只能存在以下6中标签
    <title>标签
    <meta>标签
    <link>标签
    <style>标签
    <script>标签
    <base>标签

<title>标签

  • <titie>标签用来定义网页的标题

    <head>
    	<title>Lai Lab-专注于技术资源的网站</title>
    </head>
    

<meta>标签

  • <meta> 标签描述了一些基本的元数据。

  • <meta> 标签提供了元数据.元数据也不显示在页面上,但会被浏览器解析

  • <meta> 元素通常用于指定网页的描述关键词文件的最后修改时间作者,和其他元数据

  • 元数据可以使用于浏览器(如何显示内容或重新加载页面)搜索引擎(关键词)或其他 Web 服务

  • <meta>一般放置于 <head>标签中

    <!--mate编码格式说明-->
    <meta charset="utf-8" />
    <!--为搜索引擎定义关键字-->
    <meta name="keywords" content="C Java Python MySQL HTML"/>
    <!--为网页定义描述内容-->
    <meta name="description" content="Free Web tutorials on Java and HTML"/>
    <!--定义网页作者-->
    <meta name="author" content="Lai"/>
    <!--每30秒刷新网页-->
    <meta http-equiv="refresh" content="30"/>
    

<link>标签

  • <link> 标签定义了文档与外部资源之间的关系

  • <link> 标签通常用于链接到样式表

    <head>
    	<link rel="stylesheet" type="text/css" href="mystyle.css">
    </head>
    

<style>标签

  • <style> 标签定义了元素的CSS样式

  • <style>放置于 标签中

    <head>
    	<style type="text/css">
    		*{
    			margin: 0;
    			padding: 0;
    		}
    	</style>
    </head>
    

<script>标签

  • <script>标签主要用来定义页面的JavaScript代码,也可以引用外部JavaScript文件

    <head>
    	<script>
    		...
    	</script>
    </head>
    

<base>标签

  • <base> 标签描述了基本的链接地址/链接目标,该标签作为 HTML 文档中所有的链接标签的默认链接

    <head>
    	<base href="http://www.lailab.cn" target="_blank">
    </head>
    

本章练习

  • 本章练习的完整答案将会在下一章的本章练习中给出

  • 请默写HTML基本框架


常用标签

  • 以下是一些常用HTML标签

    标签名标签含义
    <a>超链接标签
    <b>文字加粗
    <big>增大字体
    <br />换行
    <center>内容居中
    <code>代码模式
    <div>组件盒
    <dl>定义列表
    <em>强调文字
    <font size=“” color=“”></font>字体设置
    <i>斜体
    <li>无序列表
    <p>段落
    <small>缩小字体

标签详解

标题标签(<h1>~<h6>)

  • <title>和<h>都叫标题标签,但是<title>标签是用来给网页设置标题,而<h>标签是网页内部的标题

  • h是hander的缩写,在<h1>~<h6>中,<h1>重要性最高,<h6>重要性最低

    <h1>一级标题</h1>
    <h2>二级标题</h2>
    <h3>三级标题</h3>
    <h4>四级标题</h4>
    <h5>五级标题</h5>
    <h6>六级标题</h6>
    

    一级标题

    二级标题

    三级标题

    四级标题
    五级标题
    六级标题

段落标签(<p>)

  • 在HTML中,可以用<p></p>来表示一段本文

    <p>静夜思</p>
    <p>床前明月光,</p>
    <p>疑是地上霜。</p>
    <p>举头望明月,</p>
    <p>低头思故乡。</p>
    

    静夜思

    床前明月光,

    疑是地上霜。

    举头望明月,

    低头思故乡。

换行标签(<br>)

  • 在一些特定的文章中,需要手动换行,就需要用到<br >标签

    <p>静夜思<br />床前明月光,<br />疑是地上霜。<br />举头望明月,<br />低头思故乡。</p>
    

    静夜思
    床前明月光,
    疑是地上霜。
    举头望明月,
    低头思故乡。

文本标签(8种)

类型标签
粗体标签<strong>,<b>
斜体标签<i>,<em></em>,<cite>
上标标签<sup>
下标标签<sub>
中划线标签<s>
下划线标签<u>
大字号标签<big>
小字号标签<small>

水平线标签(<hr>)

  • <hr />标签是英文horizon的缩写,在HTML中表示水平线

    <p>静夜思</p>
    <p>床前明月光,</p>
    <p>疑是地上霜。</p>
    <p>举头望明月,</p>
    <p>低头思故乡。</p>
    <hr />
    <p>悯农</p>
    <p>锄禾日当午,</p>
    <p>汗滴禾下土。</p>
    <p>谁知盘中餐,</p>
    <p>粒粒皆辛苦。</p>
    

    静夜思

    床前明月光,

    疑是地上霜。

    举头望明月,

    低头思故乡。


    悯农

    锄禾日当午,

    汗滴禾下土。

    谁知盘中餐,

    粒粒皆辛苦。

盒子标签(<div>)

  • 在HTML中,我们用<div>来划分结构,从而让CSS和JavaScript更好的控制某一块的内容

    <div>
        <!--这是第一首诗-->
    	<p>静夜思</p>
    	<p>床前明月光,</p>
    	<p>疑是地上霜。</p>
    	<p>举头望明月,</p>
    	<p>低头思故乡。</p>
    </div>
    <div>
        <!--这是第二首诗歌-->
    	<p>悯农</p>
    	<p>锄禾日当午,</p>
    	<p>汗滴禾下土。</p>
    	<p>谁知盘中餐,</p>
    	<p>粒粒皆辛苦。</p>
    </div>
    

    静夜思

    床前明月光,

    疑是地上霜。

    举头望明月,

    低头思故乡。

    悯农

    锄禾日当午,

    汗滴禾下土。

    谁知盘中餐,

    粒粒皆辛苦。

行内元素

  • 块元素和行内元素在HTML中是极其重要的概念,同时也是CSS中的重要内容

  • 在之前的学习中,可能会发现运行结果中,有些元素是独占一行的,其他元素位于其他行,如:<strong>,<b>,<em>等

  • 以下总结了几种常见的块元素

    行内元素说明
    <strong>粗体标签
    <em>斜体标签
    <a>超链接标签
    <span>常用行内元素标签,结合CSS定义样式

块元素

  • 除了有行内元素外,也有一些元素不是独占一行的,如:<p>,<div>,<br>,<hr>等

  • 以下总结了几种常见的块元素

    块元素说明
    <h1>~<h6>标题标签
    <p>段落标签
    <div>盒子标签
    <br>换行标签
    <hr>水平线标签
    <ol>有序列表
    <ul>无序列表
  • 总的来说,块元素有以下两个特点

    1. 块元素独占一行,排斥其他元素与其同行
    2. 块元素可以容纳其他块元素或行内元素

特殊符号

  • 常用符号分为易通过输入法符号和不易通过输入法符号

  • 下面几种是易通过符号

    特殊符号说明代码
    "双引号&quot;
    单引号(左)&lsquo;
    单引号(右)&rsquo;
    ×乘号&times;
    ÷除号&divide;
    >大于号&gt;
    <小于号&lt;
    &“与”符号&amp;
    破折号&mdash;
    |竖线(管道符)&#124;
  • 几种不易通过符号

    特殊符号说明代码
    §分节符&sect;
    ©版权符&copy;
    ®注册商标符&reg;
    商标符&trade;
    欧元符&euro;
    £英镑符&pound;
    ¥日元符&yen;
    °&deg;

注释标签

  • 在HTML中注释标签表示为

  • 注释的代码不会显示在浏览器中

本章练习

  • 本章练习的完整答案将会在下一章的本章练习中给出

  • 上章完整代码

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8" />
    	</head>
    	<body>
            <h1>这是一个文本</h1>
            <p>这是一个段落</p>
            ....
    	</body>
    </html>
    
  • 用本章所学打印出以下内容

    赠汪伦
    唐©李白
    李白乘舟将欲行,
    忽闻水上踏歌声。
    桃花潭水深千尺,
    不及汪伦送我情。
    
  • 其中 题目要用2号字体,朝代用3号字体,作者用3号字体,诗歌用4号字体


列表标签

  • 有些资料中还提到“目录标签dir”和“菜单列表menu”,这两种标签在HTML5中已经被废除了,用无需列表ul替代

有序列表

  • 顾名思义,有序列表就是对数据列表加上顺序,如1. 2. 3.或a. b. c.等

  • 在HTML中想要表示有序列表的话就要用到<ol>标签和<li>标签

    <ol>
        <li>有序列表1</li>
        <li>有序列表2</li>
        <li>有序列表3</li>
    </ol>
    
    1. 有序列表1
    2. 有序列表2
    3. 有序列表3
  • 注意:想要表示有序列表必须要将<ol>和<li>两个标签一起用

  • 从上面的运行结果上看,有序列表将表内元素用数字进行标注顺序

  • 我们还可以通过type来设置其他样式

type属性

<ol type="属性值">
  <li>有序列表1</li>
  <li>有序列表2</li>
  <li>有序列表3</li>
</ol>
  • 在有序列表中,type的值有如下几种

    属性值表示样式
    1阿拉伯数字:1. 2. 3.
    a小写英文:a. b. c.
    A大写英文:A. B. C.
    i小写罗马数字:i. ii. iii.
    I大写罗马数字:I. II. III.
    <!--默认为数字标识-->
    <ol>
        <li>有序列表1</li>
        <li>有序列表2</li>
        <li>有序列表3</li>
    </ol>
    <hr />
    <!--数字标识-->
    <ol type="1">
        <li>有序列表1</li>
        <li>有序列表2</li>
        <li>有序列表3</li>
    </ol>
    <hr />
    <!--小写字母标识-->
    <ol type="a">
        <li>有序列表1</li>
        <li>有序列表2</li>
        <li>有序列表3</li>
    </ol>
    <hr />
    <!--大写字母标识-->
    <ol type="A">
        <li>有序列表1</li>
        <li>有序列表2</li>
        <li>有序列表3</li>
    </ol>
    <hr />
    <!--小写罗马标识-->
    <ol type="i">
        <li>有序列表1</li>
        <li>有序列表2</li>
        <li>有序列表3</li>
    </ol>
    <hr />
    <!--大写罗马标识-->
    <ol type="I">
        <li>有序列表1</li>
        <li>有序列表2</li>
        <li>有序列表3</li>
    </ol>
    
    1. 有序列表1
    2. 有序列表2
    3. 有序列表3

    1. 有序列表1
    2. 有序列表2
    3. 有序列表3

    1. 有序列表1
    2. 有序列表2
    3. 有序列表3

    1. 有序列表1
    2. 有序列表2
    3. 有序列表3

    1. 有序列表1
    2. 有序列表2
    3. 有序列表3

    1. 有序列表1
    2. 有序列表2
    3. 有序列表3

无序列表

  • 无序列表就是列表中的元素表示无顺序,例:●. ●. ●.

    <ul>
        <li>无序列表1</li>
        <li>无序列表2</li>
        <li>无序列表3</li>
    </ul>
    
    • 无序列表1
    • 无序列表2
    • 无序列表3

type属性

  • 无序列表中也存在type属性,如下表

    属性值表示样式
    disc实心圆●
    circle空心圆○
    square实心正方形■
    <!--默认是实心圆-->
    <ul>
        <li>无序列表1</li>
        <li>无序列表2</li>
        <li>无序列表3</li>
    </ul>
    <hr />
    <!--实心圆标识-->
    <ul type="disc">
        <li>无序列表1</li>
        <li>无序列表2</li>
        <li>无序列表3</li>
    </ul>
    <hr />
    <!--空心圆标识-->
    <ul type="circle">
        <li>无序列表1</li>
        <li>无序列表2</li>
        <li>无序列表3</li>
    </ul>
    <hr />
    <!--实心正方形标识-->
    <ul type="square">
        <li>无序列表1</li>
        <li>无序列表2</li>
        <li>无序列表3</li>
    </ul>
    
    • 无序列表1
    • 无序列表2
    • 无序列表3

    • 无序列表1
    • 无序列表2
    • 无序列表3

    • 无序列表1
    • 无序列表2
    • 无序列表3

    • 无序列表1
    • 无序列表2
    • 无序列表3

定义列表

  • 定义列表分为两部分:名词和描述

    <dl>
        <dt>名词</dt>
        <dd>描述</dd>
        ....
    </dl>
    
  • dl是定义列表(definition list)的简称,规定了列表的有效范围

  • dt是定义名词(definition term)的简称,用于添加列表的名词

  • dd是定义描述(definition description)的简称,用于添加列表的解释

    <dl>
        <dt>Java</dt>
        <dd>Java分为Java EE,Java SE,Java ME</dd>
        <dt>Web</dt>
        <dd>Web主要分为HTML,CSS,JavaScript</dd>
    </dl>
    
    Java
    Java分为Java EE,Java SE,Java ME
    Web
    Web主要分为HTML,CSS,JavaScript

HTML语义化

  • 在HTML中一个功能可能会有很多种实现方法,例:

    <!--代码1-->
    <ol>
        <li>有序列表1</li>
        <li>有序列表2</li>
        <li>有序列表3</li>
    </ol>
    <!--代码2-->
    <p>1.有序列表1</p>
    <p>2.有序列表2</p>
    <p>3.有序列表3</p>
    
    1. 有序列表1
    2. 有序列表2
    3. 有序列表3

    1.有序列表1

    2.有序列表2

    3.有序列表3

  • 由此我们会发现,用p标签写的代码反而比有序列表写法更简单,同理,在HTML中很多标签可以用以前学过的标签来代替,所以就懒得学新标签了,这种想法是完全错误的,HTML语言的精髓恰恰在此,正是因为HTML的语义化才使得HTML在可读性和可维护性上更好,所以,初学者在刚接触HTML时不要抱着这种心态

本章练习

  • 本章练习的完整答案将会在下一章的本章练习中给出

  • 上章完整代码

    <!DOCTYPE html>
    <html>
    
    	<head>
    		<meta charset="UTF-8">
    	</head>
    
    	<body>
    		<h2>赠汪伦</h2>
    		<h3>&copy;李白</h3>
    		<h4>李白乘舟将欲行,</h4>
    		<h4>忽闻水上踏歌声。</h4>
    		<h4>桃花潭水深千尺,</h4>
    		<h4>不及汪伦送我情。</h4>
    	</body>
    
    </html>
    
  • 用本章所学打印出以下问卷调查

    问卷调查
    -----------------------------------------------------------------------------------------
    1.你是通过什么途径来到Lai Lab官网的?
    	A.微信公众号
    	B.朋友推荐
      	C.百度搜索
      	D.其他途径
      	
    2.你感觉Lai Lab官网怎么样?
      	A.很好,功能很多
        B.一般般,没有什么突出的地方
        C.很差。。。  	
    
  • 其中 标题要用2号字体,问题用3号字体,–…–表示分割线


表格标签

  • 在web1.0时代,网页布局通常是用表格来完成的,但是在web2.0中,CSS技术取代了这种方式,但是在网页制作上表格还是有着重要的作用,表格可以整齐的显示信息,如下表

    技术说明
    HTML网页的结构
    CSS网页的外观
    JavaScript网页的行为

基本结构

<table>
    <tr>
 	   	<td>第一行第一列</td>
  		<td>第一行第二列</td>
  	</tr>
  	<tr>
  		<td>第二行第一列</td>
  		<td>第二行第一列</td>
  	</tr>
</table>
第一行第一列第一行第二列
第二行第一列第二行第一列
  • 在HTML中,表格标签分为三个部分
    • 表格标签:<table>
    • 行标签:<tr>
    • 列标签:<td>

完整结构

  • 一个完整的表格不仅仅有<table>,<tr>,<td>这些标签,还应该具有<caption>,<th>等

表格标题(caption)

<table>
	<caption>表格标题</caption>
    	<tr>
 	   		<td>第一行第一列</td>
  		<td>第一行第二列</td>
  	</tr>
  	<tr>
  		<td>第二行第一列</td>
  		<td>第二行第一列</td>
  	</tr>
</table>
表格标题
第一行第一列第一行第二列
第二行第一列第二行第一列
  • 注意:一个表格只能拥有一个标题(caption)

表头单位格(<th>)

  <table>
  	<caption>表格标题</caption>
       	<tr>
   	   		<th>第一列</th>
    		<th>第二列</th>
    	</tr>
     	 <tr>
   	   		<td>第一行第一列</td>
    		<td>第一行第二列</td>
    	</tr>
    	<tr>
    		<td>第二行第一列</td>
    		<td>第二行第二列</td>
    	</tr>
  </table>
表格标题
第一列第二列
第一行第一列第一行第二列
第二行第一列第二行第二列

扩展知识

  • 通常情况下,我们需要的表格都需要有边界,但表格默认是没有边框的,这时我们可以用table中的border属性来定义边框的宽度

     <table border="1">
         ...
    </table>
    

代码语义化

  • 在平时生活中,表格通常被用来储存一些数据,如成绩等,通常数据需要有表头(数据类型栏),表身(数据栏),表尾(统计数据),在HTML中,我们可以分别用<thead>,<tbody>,<tfoot>来表示表头,表身和表尾

    <table>
        <!--表头-->
        <thead>
         	 <tr>
       	   		<td>第一行第一列</td>
        		<td>第一行第二列</td>
        	</tr>
        </thead>
        <!--表身-->
        <tbody>
        	<tr>
        		<td>第二行第一列</td>
        		<td>第二行第二列</td>
        	</tr>
        </tbody>
        <!--表尾-->
        <tfoot>
        	<tr>
        		<td>第三行第一列</td>
        		<td>第三行第二列</td>
        	</tr>
        </tfoot>
      </table>
    
第一行第一列第一行第二列
第二行第一列第二行第二列
第三行第一列第三行第二列

列合并(colspan)

  • 在前面我们学习了coption标题标签,我们发现这个标题其实是在表的外面的,有时我们可能需要标题存在于表内,此时我们可以通过列合并(cospan)来解决,我们可以合并第一行的两列来显示标题

     <table>
         <!--表外标题-->
      	 <!--<caption>表格标题</caption>-->
           	<tr>
                <!--合并两列来作为内部标题-->
       	   		<td colspan="2">第一行第一列</td>
        	</tr>
         	 <tr>
       	   		<td>第一行第一列</td>
        		<td>第一行第二列</td>
        	</tr>
        	<tr>
        		<td>第二行第一列</td>
        		<td>第二行第二列</td>
        	</tr>
      </table>
    
    第一行第一列
    第一行第一列第一行第二列
    第二行第一列第二行第二列
  • 同理,就能用列合并来解决很多其他问题

行合并(rowspan)

  • 行合并就是讲纵向的多个单位格合并

    <table>
         	<tr>
       	   		<td rowspan="2">第一行第二行第一列</td>
        		<td>第一行第二列</td>
        	</tr>
        	<tr>
        		<td>第二行第二列</td>
        	</tr>
      </table>
    
    第一行第二行第一列第一行第二列
    第二行第二列

本章练习

  • 本章练习的完整答案将会在下一章的本章练习中给出

  • 上章完整代码

    <!DOCTYPE html>
    <html>
    
    	<head>
    		<meta charset="utf-8" />
    	</head>
    
    	<body>
    		<h2>问卷调查</h2>
    		<hr />
    		<ol>
    			<li>
    				<h3>你是通过什么途径来到Lai Lab官网的?<h3/>
    				<ol type="A">
    					<li>微信公众号</li>
    					<li>朋友推荐</li>
    					<li>百度搜索</li>
    					<li>其他途径</li>
    				<br />
    				</ol>
    			</li>
    			<li><h3>你感觉Lai Lab官网怎么样?<h3/>
    				<ol>
    					<li>很好,功能很多</li>
    					<li>一般般,没有什么突出的地方</li>
    					<li>很差。。。</li>
    				</ol>
    			</li>
    		</li>
    	</body>
    </html>
    
  • 用本章所学打印出注册页面

    <!--
    格式为:
    Lai Lab用户登录系统
    账号:  01234567890
    密码: ***********
    -->
    --------------------
    |Lai Lab用户登录系统|
    --------------------
    |账号:|01234567890 |
    --------------------
    |密码:|*********** |
    --------------------
    
  • 表格边框为1


图片标签

  • 任何网站都不能没有图片,一个图片炫酷交互友好的页面就能吸引更多的流量,而要在网站中加入图片,就要使用图片标签,下面就让我们来认识一下图片标签

基本结构

  • 图片标签是<img />标签,他的结构为

    <img src="" alt="" title="" />
    
  • 其包含3个常用属性

路径属性(src)

  • src是<img />标签的路径属性,这个路径可以是想对路径,也可以是绝对路径,也可以是网络路径

  • src是<img />必要的标签

  • 引用同路径的image.png图片

    <img src="image.png" />
    

描述属性(alt,title)

  • alt与title都是<img />的描述属性

    • alt是描述给浏览器看的,只有当图片无法显示是才会看见alt中的内容

    • title是描述给用户看的,当鼠标移动到图片上是,就能看到图片的title内容

      <img src="image.png" alt="美丽的图片" title="漂亮的图片" />
      

本章练习

  • 本章练习的完整答案将会在下一章的本章练习中给出

  • 上章完整代码

    <!DOCTYPE html>
    <html>
    
    	<head>
    		<meta charset="UTF-8">
    	</head>
    
    	<body>
    		<table border="1">
    			<tr>
    				<td colspan="2">Lai Lab用户登录系统</td>
    			</tr>
    			<tr>
    				<td>账号:</td>
    				<td>01234567890</td>
    			</tr>
    			<tr>
    				<td>密码:</td>
    				<td>**********</td>
    			</tr>
    		</table>
    	</body>
    
    </html>
    
  • 本章问题:描述alt与title的区别


超链接标签

  • HTML最终要的标签(没有之一,本人观点)正是有了超链接(<a>标签),每个网页才会被链接在一起,才会产生复杂的互联网

基本结构

  • 超链接标签是<a>标签,基本结构为

    <a href="链接地址">文本或图片</a>
    
  • 链接地址可以是内部页面地址也可以是网络(外部)链接地址

  • 当点击文本或图片时,跳转到链接地址

跳转格式属性(terget)

  • 默认跳转方式是在原网页基础上跳转,在某些情况下可能需要新建窗口,就需要用到terget属性,terget为我们提供了4种跳转方式

    属性值说明
    _self原窗口打开(默认)
    _blank新窗口打开
    _parent父窗口打开
    _top顶层窗口打开

锚点链接(页内查找)

  • <a>标签除了可以链接外部页面和内部页面,还可以在本页面里锚点链接

    <!DOCTYPE html>
    <html>
    
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    	</head>
    
    	<body>
    		<div>
    			<a href="#html">html</a>
    			<a href="#css">css</a>
    			<a href="#javascript">javascript</a>
    		</div>
    
    		<div id="html">
    			<p>这是HTML模块</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    		</div>
    
    		<div id="css">
    			<p>这是CSS模块</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    		</div>
    
    		<div id="javascript">
    			<p>这是JavaScript模块</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    			<p>...</p>
    		</div>
    	</body>
    
    </html>
    

    当我们点击上面的超链接后会发现,网页跳转到了对应的版块

本章练习

  • 本章练习的完整答案将会在下一章的本章练习中给出

  • 上章问题答案

    • alt是描述给浏览器看的,只有当图片无法显示是才会看见alt中的内容

    • title是描述给用户看的,当鼠标移动到图片上是,就能看到图片的title内容

  • 本章问题

    1. 定义“百度一下1”超链接点击本窗口跳转百度

    2. 定义“百度一下2”超链接点击新建窗口跳转百度


表单标签

  • 我们前面的知识只能让我们学习静态页面,本节我们将通过学习表单制作动能与用户交互的动态页面

  • 从标签来看表单标签分为5种

    • form标签

    • input标签

    • textarea标签

    • select标签

    • option标签

  • 从外观上,表单可分为8种

    • 单行文本框
    • 单行密码框
    • 单选框
    • 复选框
    • 按钮
    • 文件上传
    • 多行文本框
    • 下拉菜单

表单标签(<form>)

  • 一说起表,大家就会想起几行几列的表格,但是在HTML中,表单和表格本质存在不同,表单是指一些输入框,按钮,复选框,单选框的统称

  • 对于初学者,也可以将表单与<div>标签进行类比,先认为表单是储存这些控件的盒子

  • form的几个属性

    属性说明
    name表单名称
    method提交方式
    action提交地址
    target打开方式
    enctype编码方式

表单名称(name)

  • 一个网页中可能有多个表单,可以通过name属性对这些表单命名,以便于区分

    <form name="MyForm1">
        ...
    </form>
    <form name="MyForm2">
        ...
    </form>
    

提交方式(method)

  • 在后面我们会了解到数据提交会有post和get两种方式,在表单里面,一般采用post方式提交

    <form name="MyForm" method="post">
        ...
    </form>
    

提交地址(action)

  • 声明此表单由谁处理

    <form name="MyForm" method="post" action="index.php">
        ...
    </form>
    

打开方式(target)

  • 类比<a>标签,target属性同样也是网页打开方式,属性值也与<a>标签相同

    <form name="MyForm" mrthod="post" action="index.php" target="_blank">
        ...
    </form>
    

编码格式(enctype)

  • enctype规定了表单的编码格式,一般情况下,不需要修改

    属性说明
    application/x-www-form-urlencoded默认的编码方式,把表单域的值处理成URL编码格式
    multipart/form-data用二进制流处理表单中的数据
    text/plain用表单发送邮件

文本框

文本框分为单行文本框和多行文本框

单行文本框
  • 在HTML中,单行文本框用<input>标签实现,单行文本框的类别是通过type属性进行区分的

  • 使用格式为

    <input type="value" />
    
  • 常用的属性有如下几种

    描述
    email定义用于 e-mail 地址的文本字段
    hidden定义隐藏输入字段
    number定义带有 spinner 控件的数字字段
    password定义密码字段。字段中的字符会被遮蔽。
    search定义用于搜索的文本字段。
    tel定义用于电话号码的文本字段。
    text默认。定义单行输入字段,用户可在其中输入文本。默认是 20 个字符。
    url定义用于 URL 的文本字段。
  • 同时文本框还有以下几个常用属性

    属性说明内容
    value添加内容任意字符串
    size尺寸大小数字
    maxlength最大输入长度数字
    placeholder提示文字任意字符串
    <!DOCTYPE html>
    
    <html>
    
    	<head>
    		<meta charset="utf-8" />
    	</head>
    
    	<body>
    		<form name="MyForm" mrthod="post" action="index.php" target="_blank">
    			<input type="email" value="这是电子邮件输入框"/>
    			<br />
    			<input type="number" value="这是数字输入框"/>
    			<br />
    			<input type="search" value="这是搜索框"/>
    			<br />
    			<input type="tel" value="这是电话输入框"/>
    			<br />
    			<input type="url" value="这是网址输入框"/>
    			<br />
    			<input type="text" value="这是单行输入框" />
    			<br />
    			<input type="password" value="这是密码框" />
    		</form>
    	</body>
    
    </html>
    






多行文本框(textarea)
  • 多行文本框的表示方法为

    <textarea rows="行数" cols="列数" value="取值">默认内容</textarea>
    

按钮标签

  • 按钮标签分为4种

  • 使用格式为

    <input type="value" />
    
    属性值说明
    button一般按钮
    submit数据提交按钮
    reset重置按钮
  • 还有一种如今已很少用了的按钮标签

    <button></button>
    
    <!DOCTYPE html>
    
    <html>
    
    	<head>
    		<meta charset="utf-8" />
    	</head>
    
    	<body>
    		<form name="MyForm" mrthod="post" action="index.php" target="_blank">
    			<input type="button" value="这是按钮" />
    			<br />
    			<input type="submit" value="这是提交按钮" />
    			<br />
    			<input type="reset" value="这是重置按钮" />
    			<br />
    			<button>已经不用了的按钮</button>
    			<br />
    		</form>
    	</body>
    
    </html>
    



    已经不用了的按钮

单选框

  • 在HTML中,单选框的表示方式是

    <input type="radio" name="组名" value="内容" />
    
  • 注意:想要实现单选框的单选效果,就要把各个控件的name属性相同

  • 通过checked属性来表示选中

    <!DOCTYPE html>
    
    <html>
    
    	<head>
    		<meta charset="utf-8" />
    	</head>
    
    	<body>
    		<form name="MyForm" mrthod="post" action="index.php" target="_blank">
    			<!--checked表示选中状态-->
    			<input type="radio" name="sex" value="" checked /><!--相当于<input type="radio" name="sex" value="男" checked="checked" />男-->
    			<input type="radio" name="sex" value="" /></form>
    	</body>
    
    </html>
    
    男 女

复选框

  • 复选框的表示方式为

    <input type="checkbox" name="组名" value="内容" />
    
  • 与单选框类似,复选框各个控件的name属性相同

  • 同样也是通过checked属性来表示选中

    <!DOCTYPE html>
    
    <html>
    
    	<head>
    		<meta charset="utf-8" />
    	</head>
    
    	<body>
    		<form name="MyForm" mrthod="post" action="index.php" target="_blank">
    			<input type="checkbox" name="food" value="苹果" checked />苹果
    			<input type="checkbox" name="food" value="香蕉" />香蕉
    			<input type="checkbox" name="food" value="梨子" checked />梨子
    		</form>
    	</body>
    
    </html>
    
    苹果 香蕉 梨子

下拉列表

  • 与无序列表类似,下拉列表是通过<select>标签和<option>标签配合表示的

  • 下拉菜单很节省空间

    <!DOCTYPE html>
    
    <html>
    
    	<head>
    		<meta charset="utf-8" />
    	</head>
    
    	<body>
    		<form name="MyForm" mrthod="post" action="index.php" target="_blank">
    			<select>
    				<option>菜单1</option>
    				<option>菜单2</option>
    				<option>菜单3</option>
    			</select>
    		</form>
    	</body>
    
    </html>
    
    菜单1 菜单2 菜单3
  • select有系列2个常用属性

    属性说明
    multiple下拉菜单可以选中多项
    size下拉菜单最多显示多少栏
    
    <!DOCTYPE html>
    
    <html>
    
    	<head>
    		<meta charset="utf-8" />
    	</head>
    
    	<body>
    		<form name="MyForm" mrthod="post" action="index.php" target="_blank">
    			<select multiple>
    				<option>菜单1</option>
    				<option>菜单2</option>
    				<option>菜单3</option>
    				<option>菜单4</option>
    				<option>菜单5</option>
    				<option>菜单6</option>
    				<option>菜单7</option>
    				<option>菜单8</option>
    				<option>菜单9</option>
    				<option>菜单10</option>
    			</select>
    		</form>
    	</body>
    
    </html>
    
    菜单1 菜单2 菜单3 菜单4 菜单5 菜单6 菜单7 菜单8 菜单9 菜单10
    
    <!DOCTYPE html>
    
    <html>
    
    	<head>
    		<meta charset="utf-8" />
    	</head>
    
    	<body>
    		<form name="MyForm" mrthod="post" action="index.php" target="_blank">
    			<select size="5">
    				<option>菜单1</option>
    				<option>菜单2</option>
    				<option>菜单3</option>
    				<option>菜单4</option>
    				<option>菜单5</option>
    				<option>菜单6</option>
    				<option>菜单7</option>
    				<option>菜单8</option>
    				<option>菜单9</option>
    				<option>菜单10</option>
    			</select>
    		</form>
    	</body>
    
    </html>
    
    菜单1 菜单2 菜单3 菜单4 菜单5 菜单6 菜单7 菜单8 菜单9 菜单10

本章练习

  • 上章完整代码

    <!DOCTYPE html>
    <html>
    
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    	</head>
    
    	<body>
    		<div>
    			<a href="http://www.baidu.com" target="_self">百度一下1</a>
    
    			<a href="http://www.baidu.com" target="_blank">百度一下2</a>
    		</div>
    
    	</body>
    
    </html>
    
  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值