前文链接:从零基础到web前端工程师(一)
学习表格、表单
表格(table)
表格使HTML的一项非常重要的功能,利用其多种属性能够设计处多样化的表格。
创建表格
在HTML网页中,要想创建表格,就需要使用表格相关的标签。创建表格的基本语法格式如下:
<table>
<tr>
<td>单元格内的文字</td>
...
</tr>
...
</table>
在上面的语法中包含三对HTML标签,分别为 <table></table>、<tr></tr>、<td></td>,他们是创建表格的基本标签,缺一不可,下面对他们进行具体地解释:
-
table用于定义一个表格。
-
<tr> </tr> 用于定义表格中的一行,必须嵌套在 table标签中,在 table中包含几对 tr,就有几行表格。
-
<td> </td>:用于定义表格中的单元格,必须嵌套在<tr> </tr>标签中,一对 <tr> </tr>中包含几对<td> </td>,就表示该行中有多少列(或多少个单元格)。
注意:
1. <tr> </tr>中只能嵌套<td> </td>。
2. <td> </td>标签,他就像一个容器,可以容纳所有的元素。
表格属性:
例如:
举一个小小的案例,创建了一个表格,
这里只写了表格中的代码
<table border="1" align="center" cellspacing="0" cellpadding="0">
<tr>
<td>姓名</td>
<td>年龄</td>
<td>性别</td>
</tr>
<tr>
<td>小明</td>
<td>18</td>
<td>男</td>
</tr>
<tr>
<td>小红</td>
<td>18</td>
<td>女</td>
</tr>
</table>
效果:
表头标签
表头一般位于表格的第一行或第一列,其文本加粗居中,如下图所示,即为设置了表头的表格。设置表头非常简单,只需用表头标签<th></th>替代相应的单元格标签<td></td>即可。
表格结构
在使用表格进行布局时,可以将表格划分为头部、主体和页脚,具体如下所示:
<thead> </thead>:用于定义表格的头部。
必须位于<table> </table> 标签中,一般包含网页的logo和导航等头部信息。
<tbody></tbody>:用于定义表格的主体。
位于<table> </table>标签中,一般包含网页中除头部和底部之外的其他内容。
表格标题
表格的标题: caption
实例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>为表格设置表头</title>
</head>
<body>
<h3>下面公布某班的期中考试成绩</h3>
<table align="left" border="1" cellpadding="0" cellspacing="0">
<caption> 期中考试成绩表</caption>
<tr>
<th>姓名</th>
<th>语文</th>
<th>数学</th>
<th>英语</th>
</tr>
<tr>
<td>小明</td>
<td>94</td>
<td>98</td>
<td>77</td>
</tr>
<tr>
<td>小红</td>
<td>98</td>
<td>78</td>
<td>100</td>
</tr>
<tr>
<td>小张</td>
<td>89</td>
<td>99</td>
<td>89</td>
</tr>
</table>
</body>
</html>
结果:
caption 标签必须紧随 table 标签之后。您只能对每个表格定义一个标题。通常这个标题会被居中于表格之上。
合并单元格
跨行合并:rowspan 跨列合并:colspan
这里就不多介绍了,直接看代码实例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>设置单元格行跨度</title>
</head>
<body>
<table border="1" bordercolor="00CCFF" cellspacing="0" cellpadding="5">
<caption>某网站上书店的销售分类</caption>
<tr bgcolor="aqua">
<td width="140">类别</td>
<td width="300">子类别</td>
</tr>
<tr>
<td rowspan="3">电脑书籍</td>
<td >编程类</td>
</tr>
<tr>
<td >C语言</td>
</tr>
<tr>
<td>数据库类</td>
</tr>
<tr>
<td rowspan="2"> 考试类</td>
<td>考研类</td>
</tr>
<tr>
<td> 计算机等级考试</td>
</tr>
</table>
<table align="left" width="400" bgcolor="#f0f8ff" border="1">
<caption>必读书籍</caption>
<tr>
<td colspan="3">计算机书籍</td>
<td>文学类</td>
</tr>
<tr>
<td>算法导论</td>
<td>Java核心技术</td>
<td>python爬虫</td>
<td>东野圭吾小说</td>
</tr>
</table>
</body>
</html>
实现效果:
注意: 将多个内容合并的时候,就会有多余的东西,把它删除。 例如 把 3个 td 合并成一个, 那就多余了2个,需要删除。
总结表格
-
表格提供了HTML 中定义表格式数据的方法。
-
表格中由行中的单元格组成。
-
表格中没有列元素,列的个数取决于行的单元格个数。
-
表格不要纠结于外观,那是CSS 的作用。
表单标签
在HTML中,<form> </from>标志对用来创建一个表单,即定义表单的开始和结束位置,在标志对之间的一切都属于表单的内容。
每个表单元素开始于form元素,可以包括所有的表单控件,还有任何必需的伴随数据,如控件的标签、处理数据的脚本或程序的位置等,在表单的<form> 标记中,还可以设置表单的基本属性,包含表单的名称、处理程序、传送方法等。一般情况下,表单的处理程序action和传送方法method是必不可少的参数。
一个完整的表单通常由表单控件(也称为表单元素)、提示信息和表单域3个部分构成。
表单控件:
包含了具体的表单功能项,如单行文本输入框、密码输入框、复选框、提交按钮、重置按钮等。
提示信息:
一个表单中通常还需要包含一些说明性的文字,提示用户进行填写和操作。
表单域:
他相当于一个容器,用来容纳所有的表单控件和提示信息,可以通过他定义处理表单数据所用程序的url地址,以及数据提交到服务器的方法。如果不定义表单域,表单中的数据就无法传送到后台服务器。
input 控件
在上面的语法中,<input />标签为单标签,type属性为其最基本的属性,其取值有多种,用于指定不同的控件类型。除了type属性之外,<input />标签还可以定义很多其他的属性,其常用属性如下表所示。
代码实例1:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form>
<h3 align="left">登录界面</h3>
姓名:<input type="text" value="李华">
<br />
QQ:<label>
<input type="number" name="usename" size="20"/>
</label>
<br/>
密码:<label>
<input type="password" name="passward">
</label>
<br />
<input type="submit" name="提交">
</form>
</body>
</html>
显示结果:
代码实例2:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>插入表单</title>
</head>
<body>
<form name="invest">
姓名:<input type="text" name="Username" size="20"/> <br/>
网站: <input type="text" name="URL" size="20" maxlength="50" value="http://"/> <br />
密码:<input type="password" name="password" size="20" maxlength="8" /> <br/>
确认密码:<input type="password" name="qurpassword" size="20" maxlength="8"/>
请上传你的照片:<input type="file" name="file" /><br/>
请选择你喜欢的音乐:
<input type="checkbox" name="m1" value="rock" />摇滚乐
<input type="checkbox" name="m2" value="jazz"/>爵士乐
<input type="checkbox" name="m3" value="pop"/> 流行乐<br/>
请选择你居住的城市:
<input type="radio" name="city" value="beijing"/> 北京
<input type="radio" name="city" value="shanghai"/> 上海
<input type="radio" name="city" value="nanjing"/> 南京 <br/>
<input type="submit" name="submit">
</form>
</body>
</html>
显示效果:
label标签
label 标签为 input 元素定义标注(标签)。
<label>标记 可以指定 id、style、class等核心属性,也可以指定onclick等事件属性。除此之外,<label>标记还有一个for属性,该属性指定<label>标记与哪个表单控件相关联。
代码实例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<label for="pwd"> <strong> 填写密码 </strong> </label>
<br>
用户名:<input type="text"><br />
密码:<input type="password" id="pwd">
</body>
</html>
显示效果:
这里,我点击填写密码这几个文字,鼠标光标回跳到密码输入框。
总之,label作用:
用于绑定一个表单元素, 当点击label标签的时候, 被绑定的表单元素就会获得输入焦点。
textarea控件(文本域)
如果需要输入大量的信息,就需要用到<textarea></textarea>标签。通过textarea控件可以轻松地创建多行文本输入框,其基本语法格式如下:
<textarea cols="每行中的字符数" rows="显示的行数">
文本内容
</textarea>
实例案例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>添加文本域</title>
</head>
<body>
用户调查留言:<br /> <br/>
<form action="" name="invest" method="post">
用户名:<input name="username" type="text" size="20" value="一枝梨花压海棠"/><br />
密码:<input name="password" type="password" size="20" /><br />
留言: <textarea name="liuyan" rows="5" cols="40" value="输入你的留言"></textarea><br />
<input type="submit" name="submit" value="提交" />
</form>
</body>
</html>
实例结果:
下拉菜单
使用select控件定义下拉菜单的基本语法格式如下:
<select>
<option>选项1</option>
<option>选项2</option>
<option>选项3</option>
...
</select>
代码实例(框架没有写出):
<select>
<option >python</option>
<option selected="selected">Saab</option>
<option >Opel</option>
<option>Audi</option>
</select>
显示结果:
注意:
- <select></select>中至少应包含一对<option></option>。
- 在option 中定义selected =" selected "时,当前项即为默认选中项。
表单域
在HTML中,form标签被用于定义表单域,即创建一个表单,以实现用户信息的收集和传递,form中的所有内容都会被提交给服务器。创建表单的基本语法格式如下:
<form action="url地址" method="提交方式" name="表单名称">
各种表单控件
</form>
常用属性:
- Action
在表单收集到信息后,需要将信息传递给服务器进行处理,action属性用于指定接收并处理表单数据的服务器程序的url地址。 - method
用于设置表单数据的提交方式,其取值为get或post。 - name
用于指定表单的名称,以区分同一个页面中的多个表单。
注意: 每个表单都应该有自己表单域
感谢,你能看到这里,文章中难免会有错误,请指出或提出建议
下文链接:从零基础到web前端工程师(三)