目录
一、表格标签
表格是实际开发中非常常用的标签
1、表格的主要作用
- 表格主要用于显示、展示数据,因为它可以让数据显示的非常规整,可读性非常好。特别是后台展示数据的时候,能够熟练运用表格就显得很重要。一个清爽简约的表格能够把繁杂的数据表现得很有条理。
- 表格不是用来布局页面的,而是用来展示数据的。
2、表格的基本语法
<table>
<tr>
<td>单元格内的文字</td>
......
</tr>
......
</table>
- <table></table>是用于定义表格的标签
- <tr></tr>标签用于定义表格中的行,必须嵌套在<table></table>标签中
- <td></td>用于定义表格中的单元格,必须嵌套在<tr></tr>标签中
<table>
<tr>
<td>姓名</td>
<td>性别</td>
<td>年龄</td>
</tr>
<tr>
<td>小哈</td>
<td>女</td>
<td>12</td>
</tr>
<tr>
<td>小黑</td>
<td>男</td>
<td>13</td>
</tr>
<tr>
<td>小白</td>
<td>男</td>
<td>13</td>
</tr>
</table>
(一)表头单元格标签
表头单元格也是单元格,一般表头单元格位于表格的第一行或第一列,表头单元格里面的文本内容加粗居中显示。
<th>标签表示HTML表格的表头部分(table head的缩写)
<table>
<tr>
<th>姓名</th>
<th>性别</th>
<th>年龄</th>
</tr>
<tr>
<td>小哈</td>
<td>女</td>
<td>12</td>
</tr>
<tr>
<td>小黑</td>
<td>男</td>
<td>13</td>
</tr>
<tr>
<td>小白</td>
<td>男</td>
<td>13</td>
</tr>
</table>
(二)表格相关属性
表格标签这部分属性实际开发中不常用,后面通过CSS来设置。
属性名 | 属性值 | 描述 |
align | left、center、right | 规定表格相对周围元素的对齐方式 |
border | 1 或 "" | 规定表格单元是否拥有边框,默认为"",表示没有边框 |
cellpadding | 像素值 | 规定单元边沿与其内容之间的空白,默认1像素 |
cellspacing | 像素值 | 规定单元格之间的空白,默认2像素 |
width | 像素值或百分比 | 规定表格的宽度 |
<table align="center" border="1" cellpadding="20" cellspacing="0" width="500">
<tr>
<th>姓名</th>
<th>性别</th>
<th>年龄</th>
</tr>
<tr>
<td>小哈</td>
<td>女</td>
<td>12</td>
</tr>
<tr>
<td>小黑</td>
<td>男</td>
<td>13</td>
</tr>
<tr>
<td>小白</td>
<td>男</td>
<td>13</td>
</tr>
</table>
(三)表格结构标签
使用场景:因为表格可能很长,为了更好的表示表格语义,可以将表格分割成表格头部和表格主体两大部分。在表格标签中,分别用:<thead>标签 表格的头部区域 <tbody>标签 表格的主体区域,这样可以更好的分清表格结构。
- <thead></thead>:用于定义表格的头部。<thead>内部必须拥有<tr>标签。一般位于第一行。
- <tbody></tbody>:用于定义表格的主体,主要用于放数据本体。
<table align="center" border="1" cellpadding="0" cellspacing="0" width="500">
<thead>
<tr>
<th>排名</th>
<th>关键词</th>
<th>趋势</th>
<th>今日搜索</th>
<th>最近七日</th>
<th>相关链接</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>鬼吹灯</td>
<td><img src="imgs/down.jpg"/></td>
<td>345</td>
<td>123</td>
<td>
<a href="https://tieba.baidu.com">贴吧</a>
<a href="https://image.baidu.com/">图片</a>
<a href="https://baike.baidu.com/">百科</a>
</td>
</tr>
<tr>
<td>2</td>
<td>盗墓笔记</td>
<td><img src="imgs/down.jpg"/></td>
<td>124</td>
<td>675432</td>
<td>
<a href="https://tieba.baidu.com">贴吧</a>
<a href="https://image.baidu.com/">图片</a>
<a href="https://baike.baidu.com/">百科</a>
</td>
</tr>
<tr>
<td>3</td>
<td>西游记</td>
<td><img src="imgs/up.jpg"/></td>
<td>212</td>
<td></td>
<td>
<a href="https://tieba.baidu.com">贴吧</a>
<a href="https://image.baidu.com/">图片</a>
<a href="https://baike.baidu.com/">百科</a>
</td>
</tr>
<tr>
<td>4</td>
<td>东游记</td>
<td><img src="imgs/up.jpg"/></td>
<td>23</td>
<td>7654</td>
<td>
<a href="https://tieba.baidu.com">贴吧</a>
<a href="https://image.baidu.com/">图片</a>
<a href="https://baike.baidu.com/">百科</a>
</td>
</tr>
<tr>
<td>5</td>
<td>甄嬛传</td>
<td><img src="imgs/down.jpg"/></td>
<td>121</td>
<td>7676</td>
<td>
<a href="https://tieba.baidu.com">贴吧</a>
<a href="https://image.baidu.com/">图片</a>
<a href="https://baike.baidu.com/">百科</a>
</td>
</tr>
<tr>
<td>6</td>
<td>水浒传</td>
<td><img src="imgs/up.jpg"/></td>
<td>576576</td>
<td>1231421</td>
<td>
<a href="https://tieba.baidu.com">贴吧</a>
<a href="https://image.baidu.com/">图片</a>
<a href="https://baike.baidu.com/">百科</a>
</td>
</tr>
<tr>
<td>7</td>
<td>三国演义</td>
<td><img src="imgs/up.jpg"/></td>
<td>234</td>
<td>7686</td>
<td>
<a href="https://tieba.baidu.com">贴吧</a>
<a href="https://image.baidu.com/">图片</a>
<a href="https://baike.baidu.com/">百科</a>
</td>
</tr>
</tbody>
</table>
(四)合并单元格
1、合并单元格方式
- 跨行合并:rowspan="合并单元格的个数"
- 跨列合并:colspan="合并单元格的个数"
2、目标单元格
- 跨行:最上侧单元格为目标单元格,写合并代码
- 跨列:最左侧单元格为目标单元格,写合并代码
3、合并单元格的步骤
- 先确定是跨行还是跨列合并
- 找到目标单元格,写上合并方式=合并的单元格数量。比如<td colspan="2" ></td>
- 删除多余的单元格
<table border="1" cellspacing="0" width="500" height="250">
<tr>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</table>
<table border="1" cellspacing="0" width="500" height="250">
<tr>
<td></td>
<td colspan="2"></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</table>
<table border="1" cellspacing="0" width="500" height="250">
<tr>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td rowspan="2"></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</table>
二、列表标签
表格是用来显示数据的,那么列表就是用来布局的。
列表最大的特点就是整齐、整洁、有序,它作为布局会更加自由和方便。
根据使用场景不同,列表可以分成三大类:无序列表、有序列表和自定义列表。
(一)无序列表
<ul>标签表示HTML页面中项目的无序列表,一般会以项目符号呈现列表项,而列表项使用<li>标签定义。
- 无序列表的各个列表项之间没有顺序级别之分,是并列的
- <ul></ul>中只能嵌套<li></li>,直接在<ul></ul>标签中输入其他标签或者文字的做法是不被允许的
- <li></li>之间相当于一个容器,可以容纳所有元素。
- 无序列表会带有自己的样式属性,但在实际使用中,使用CSS来设置。
<h4>你喜欢的食物</h4>
<ul>
<li>西瓜</li>
<li>汉堡</li>
<li>炸鸡</li>
</ul>
(二)有序列表
有序列表即为有排列顺序的列表,其各个列表项会按照一定的顺序排列定义。
在HTML标签中,<ol>标签用于定义有序列表,列表排序以数字来显示,并且使用<li>标签来定义列表项。
<h4>成绩排行榜</h4>
<ol>
<li>小哈</li>
<li>小黑</li>
<li>小白</li>
</ol>
(三)自定义列表
自定义列表的使用场景:常用于对术语或名词进行解释和描述,定义列表的列表项前没有任何项目符号。
在HTML标签中,<dl>标签用于定义描述列表(或定义列表),该标签会与<dt>(定义项目/名字)和<dd>(描述每一个项目/名字)一起使用。
- <dl></dl>里面只能包含<dt>和<dd>
- <dt>和<dd>个数没有限制,经常是一个<dt>对应对个<dd>
<dl>
<dt>名词1</dt>
<dd>名词1解释1</dd>
<dd>名词1解释2</dd>
</dl>
<dl>
<dt>关注我们</dt>
<dd>新浪微博</dd>
<dd>官方微信</dd>
<dd>联系我们</dd>
</dl>
三、表单标签
使用表单目的是为了收集用户信息。在网页中,需要跟用户进行交互,收集用户资料,此时就需要表单。在HTML中,一个完整的表单通常由表单域、表单控件(也称为表单元素)和提示信息3个部分构成。
(一)表单域
表单域是一个包含表单元素的区域。在HTML标签中,<form>标签用于定义表单域,以实现用户信息的收集和传递。<form>会把它范围内的表单元素信息提交给服务器。
<form action="url地址" method="提交方式" name="表单域名称">
各种表单元素控件
</form>
属性 | 属性值 | 说明 |
action | url地址 | 用于指定接收并处理表单数据的服务器程序的url地址 |
method | get/post | 用于设置表单数据的提交方式,其取值为get或post |
name | 名称 | 用于指定表单的名称,以区分同一个页面中的多个表单域 |
(二)表单控件
1、input输入表单元素
<input>标签用于收集用户信息。在<input>标签中,包含一个type属性,根据不同的type属性值,输入字段拥有很多种形式(可以是文本字段、复选框、掩码后的文本控件、单选按钮、按钮等)
- <input />标签为单标签
- type属性设置不同的属性值用来指定不同的控件类型
属性值 | 描述 |
button | 定义可点击按钮(多数情况下,用于通过JavaScript启动脚本) |
checkbox | 定义复选框 |
file | 定义输入字段和“浏览”按钮,供文件上传 |
hidden | 定义隐藏的输入字段 |
image | 定义图像形式的提交按钮 |
password | 定义密码字段,该字段中的字符被掩码 |
radio | 定义单选按钮 |
reset | 定义重置按钮,重置按钮会清除表单中的所有数据 |
submit | 定义提交按钮,提交按钮会把表单数据发送到服务器 |
text | 定义单行输入字段,用户可在其中输入文本,默认宽度为20字符 |
除了type属性外,<input>标签还有其他很多属性:
属性 | 属性值 | 描述 |
name | 由用户自定义 | 定义input元素的名称 |
value | 由用户自定义 | 规定input元素的值 |
checked | checked | 规定此input元素首次加载时应当被选中 |
maxlength | 正整数 | 规定输入字段中的字符的最大长度 |
- name和value是每个表单元素都有的属性值,主要给后台人员使用
- name是表单元素的名字,要求单选按钮和复选框要有相同的name值
- checked属性主要针对于单选按钮和复选框,主要作用一打开页面,就要可以默认选中某个表单元素
- maxlength是用户可以在表单元素输入的最大字符数,一般较少使用。
<form>
用户名:<input type="text" name="username" value="请输入用户名" maxlength="6"/><br />
密码:<input type="password" name="pwd"/><br />
<!-- 性别单选按钮必须有相同的名字name才可以实现多选一 -->
<!-- 单选按钮和复选框可以设置checked属性,当页面打开的时候就可以默认选中这个按钮 -->
性别:<input type="radio" name="sex" value="男" checked="checked" />男 <input type="radio" name="sex" value="女" />女 <br />
爱好:<input type="checkbox" name="hobby" value="吃饭"/> 吃饭 <input type="checkbox" name="hobby" value="睡觉" checked="checked"/> 睡觉 <br />
上传头像:<input type="file"> <br />
<input type="submit" value="免费注册" />
<input type="reset" />
<input type="button" value="获取短信验证码" />
</form>
2、label标签
<label>标签为input元素定义标注(标签)
<label>标签用于绑定一个表单元素,当点击<label>标签内的文本时,浏览器就会自动将焦点(光标)转到或者选择对应的表单元素上,用来增加用户体验。
label标签的for属性应当与相关元素的id属性相同
<label for="sex">男</label>
<input type="radio" name="sex" id="sex" />
<form>
<label for="username">用户名:</label><input type="text" name="username" id="username" value="请输入用户名" maxlength="6"/><br />
<label for="pwd">密码:</label><input type="password" name="pwd" id="pwd"/><br />
<!-- 性别单选按钮必须有相同的名字name才可以实现多选一 -->
<!-- 单选按钮和复选框可以设置checked属性,当页面打开的时候就可以默认选中这个按钮 -->
性别:<input type="radio" name="sex" id="man" value="男" checked="checked" /><label for="man">男</label> <input type="radio" name="sex" id="woman" value="女" /><label for="woman">女</label> <br />
爱好:<input type="checkbox" name="hobby" id="eat" value="吃饭"/> <label for="eat">吃饭</label> <input type="checkbox" name="hobby" id="sleep" value="睡觉" checked="checked"/> <label for="sleep">睡觉</label> <br />
上传头像:<input type="file"> <br />
<input type="submit" value="免费注册" />
<input type="reset" />
<input type="button" value="获取短信验证码" />
</form>
2、select下拉表单元素
使用场景:在页面中,如果有多个选项让用户选择,并且想要节约页面空间时,可以使用<select>标签控件定义下拉列表。
- <select>中至少包含一对<option>
- 在<option>中定义selected="selected"时,当前项即为默认选中项
<select>
<option>选项1</option>
<option>选项2</option>
<option>选项3</option>
......
</select>
籍贯:
<select>
<option>山西</option>
<option>广东</option>
<option>浙江</option>
<option selected="selected">福建</option>
<option>湖南</option>
<option>广西</option>
<option>山东</option>
</select>
3、textarea文本域元素
使用场景:当用户输入内容较多的情况下,就不能使用文本框表单了,此时可以使用<textarea>标签。在表单元素中,<textarea>标签是用于定义多行文本输入的控件。
<form>
今日反馈:
<textarea rows="5" cols="50">在这里写上你的反馈</textarea>
</form>