html-列表标签和表单标签
一、列表标签
表格是用来显示数据的,那么列表就是用来布局的
列表最大的特点就是整齐、整洁、有序,它作为布局会更加自由和方便。
根据使用情景不同,列表可以分为三大类:无序列表、有序列表和自定义列表。
1.无序列表(重点)
<ul> 标签表示 HTML 页面中项目的无序列表,一般会以项目符号呈现列表项,而列表项使用 <li> 标签定义。
无序列表的基本语法格式如下:
<ul>
<li>列表项1</li>
<li>列表项2</li>
<li>列表项3</li>
</ul>
<ul>:Unordered List,意为无序列表。“Unordered” 表示无序的,“List” 表示列表,在 HTML 中用于定义无序列表,其中的列表项没有顺序之分。
<li>:List Item,意为列表项。“Item” 有项目、条款的含义,在<ul>或<ol>标签内使用,用来定义每个具体的列表项目。
1. 无序列表的各个列表项之间没有顺序级别之分,是并列的。
2. <ul></ul> 中只能嵌套 <li></li>,直接在 <ul></ul> 标签中输入其他标签或者文字的做法是不被允许的。
3. <li> 与 </li> 之间相当于一个容器,可以容纳所有元素。
4. 无序列表会带有自己的样式属性,但在实际使用时,我们会使用 CSS 来设置。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>无序列表</title>
</head><body><h4>您喜欢的食物?</h4><ul><li>榴莲</li><li>臭豆腐</li><li>鲱鱼罐头</li><li><p>123</p></li><li><p> li与li之间相当于一个容器,可以容纳所有元素。</p></li></ul>
</body></html>
运行结果:
2. 有序列表(理解)
有序列表即为有排列顺序的列表,其各个列表项会按照一定的顺序排列定义。
在 HTML 标签中,<ol> 标签用于定义有序列表,列表排序以数字来显示,并且使用 <li> 标签来定义列表项。
有序列表的基本语法格式如下:
<ol>
<li>列表项1</li>
<li>列表项2</li>
<li>列表项3</li>
</ol>
<ol>:Ordered List,意为有序列表。“Ordered” 表示 “有序的” ,“List” 表示 “列表”,在 HTML 中用于定义有序列表,列表中的项目会按照一定顺序排列,通常以数字、字母等形式显示排列顺序。
<li>:List Item,意为列表项。“Item” 意思是 “项目;条款”,在<ol>标签内,每个<li>标签代表一个具体的列表项。
1. <ol></ol>中只能嵌套<li></li>,直接在<ol></ol>标签中输入其他标签或者文字的做法是不被允许的。
2. <li> 与 </li>之间相当于一个容器,可以容纳所有元素。
3. 有序列表会带有自己样式属性,但在实际使用时,我们会使用 CSS 来设置。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>有序列表(理解)</title>
</head><body><h4>粉丝排行榜</h4><ol><li>刘德华 10000</li><li>刘若英 1000</li><li>老师 1</li></ol>
</body></html>
运行结果:
3. 自定义列表(重点)
自定义列表的使用场景:
自定义列表常用于对术语或名词进行解释和描述,定义列表的列表项前没有任何项目符号。
在 HTML 标签中,<dl> 标签用于定义描述列表(或定义列表),该标签会与 <dt>(定义项目/名字)和 <dd>(描述每一个项目/名字)一起使用。 其基本语法如下:
<dl>
<dt>名词1</dt>
<dd>名词1解释1</dd>
<dd>名词1解释2</dd>
</dl>
<dl>:Definition List,意为定义列表。“Definition” 表示定义,“List” 表示列表,该标签用于创建一个包含术语定义的列表结构。
<dt>:Definition Term,意为定义术语。“Term” 有术语、词语的含义,在<dl>标签内,<dt>标签用于定义列表中的术语或项目名称。
<dd>:Definition Description,意为定义描述。“Description” 表示描述,在<dl>标签内,<dd>标签用于对<dt>定义的术语或项目进行具体解释和描述。
1. <dl></dl> 里面只能包含 <dt> 和 <dd>。
2. <dt> 和 <dd>个数没有限制,经常是一个<dt> 对应多个<dd>。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>自定义列表(重点)</title>
</head>
<body><dl><dt>关注我们</dt><dd>新浪微博</dd><dd>官方微信</dd><dd>联系我们</dd><dt>关注我们</dt><dd>新浪微博</dd><dd>官方微信</dd><dd>联系我们</dd></dl>
</body>
</html>
运行结果:
4. 列表总结
二、表单标签
1. 表单的组成
在 HTML 中,一个完整的表单通常由表单域、表单控件(也称为表单元素)和 提示信息3个部分构成。
2.表单域
表单域是一个包含表单元素的区域。
在 HTML 标签中, <form> 标签用于定义表单域,以实现用户信息的收集和传递。
<form> 会把它范围内的表单元素信息提交给服务器.
<form action=“url地址” method=“提交方式” name=“表单域名称">
各种表单元素控件
</form>
常用属性:
这3个涉及服务器,暂时不讲????
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>表单域(了解)</title>
</head>
<body><form action="demo.php" method="POST" name="name1"></form>
</body>
</html>
运行结果:
3.表单控件(表单元素)
在表单域中可以定义各种表单元素,这些表单元素就是允许用户在表单中输入或者选择的内容控件。
⑴.<input> 表单元素:type属性
在英文单词中,input 是输入的意思,而在表单元素中 <input> 标签用于收集用户信息
在 <input> 标签中,包含一个 type 属性,根据不同的 type 属性值,输入字段拥有很多种形式(可以是文本 字段、复选框、掩码后的文本控件、单选按钮、按钮等)。
<input type="属性值" />
<input /> 标签为单标签
type 属性设置不同的属性值用来指定不同的控件类型
type 属性的属性值及其描述如下:
①text
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>input 表单元素</title>
</head><body><form><!-- text 文本框 用户可以里面输入任何文字 -->用户名: <input type="text"></form>
</body></html>
运行结果:
②password:密码框 用户看不见输入的密码
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>input 表单元素</title>
</head><body><form><!-- text 文本框 用户可以里面输入任何文字 -->用户名: <input type="text"><br><!-- password 密码框 用户看不见输入的密码 -->密码: <input type="password"> <br></form>
</body></html>
运行结果:
③radio:单选按钮
加上name才可以只能选一个
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>input 表单元素</title>
</head><body><form><!-- radio 单选按钮 可以实现多选一 -->性别:男<input type="radio"> 女<input type="radio"></form>
</body></html>
运行结果:
④checkbox:复选框
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>input 表单元素</title>
</head><body><form>爱好: 吃饭 <input type="checkbox"> 睡觉 <input type="checkbox"> 打豆豆 <input type="checkbox"></form>
</body></html>
运行结果:可以多选
⑤submit和reset和button
submint点击了提交按钮,可以把 表单域 form 里面的表单元素 里面的值 提交给后台服务器
reset重置按钮可以还原表单元素初始的默认状态
普通按钮 button 后期结合js 搭配使用--
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>input 表单元素</title>
</head><body><form><!-- text 文本框 用户可以里面输入任何文字 -->用户名: <input type="text" name="username" value="请输入用户名" maxlength="6"><br><!-- password 密码框 用户看不见输入的密码 -->密码: <input type="password" name="pwd"> <br><!-- radio 单选按钮 可以实现多选一 --><!-- name 是表单元素名字 这里性别单选按钮必须有相同的名字name 才可以实现多选1 --><!-- 单选按钮和复选框可以设置checked 属性, 当页面打开的时候就可以默认选中这个按钮 -->性别: 男 <input type="radio" name="sex" value="男"> 女 <input type="radio" name="sex" value="女" checked="checked"> 人妖<input type="radio" name="sex" value="人妖"> <br><!-- checkbox 复选框 可以实现多选 -->爱好: 吃饭 <input type="checkbox" name="hobby" value="吃饭"> 睡觉 <input type="checkbox" name="hobby"> 打豆豆 <inputtype="checkbox" name="hobby" checked="checked"><br><!-- 点击了提交按钮,可以把 表单域 form 里面的表单元素 里面的值 提交给后台服务器 --><input type="submit" value="免费注册"><!-- 重置按钮可以还原表单元素初始的默认状态 --><input type="reset" value="重新填写"><!-- 普通按钮 button 后期结合js 搭配使用--><input type="button" value="获取短信验证码"> <br></form>
</body></html>
运行结果:
⑥file
<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>input 表单元素</title>
</head><body><form><!-- 文件域 使用场景 上传文件使用的 -->上传头像: <input type="file">上传头像: <input type="file" value="上传文件"></form>
</body></html>
⑵.<input> 表单元素:其他属性
除 type 属性外,<input>标签还有其他很多属性,其常用属性如下:
1. name 和value 是每个表单元素都有的属性值,主要给后台人员使用.
2. name 表单元素的名字, 要求 单选按钮和复选框要有相同的name值.
3. checked属性主要针对于单选按钮和复选框, 主要作用一打开页面,就要可以默认选中某个表单元素.
4. maxlength 是用户可以在表单元素输入的最大字符数, 一般较少使用.
①name
name是干什么用的?
在 HTML 表单中,name属性具有关键作用:
后台数据识别与处理:在表单提交数据时,name属性为后台程序识别和处理表单数据提供标识。后台开发人员依据name属性值获取对应表单元素的值。比如在用户注册页面,用户名输入框的name设为username,密码输入框name设为password,后台通过name获取用户输入的用户名和密码,进行验证和存储等操作。
单选按钮和复选框分组:对于单选按钮和复选框,相同name值可实现功能分组。以性别选择的单选按钮为例,<input type="radio" name="sex" value="男">男和<input type="radio" name="sex" value="女">女,name都为sex,这样用户选择时只能选中一个,确保数据的唯一性和准确性。
复选框同理,如兴趣爱好选择<input type="checkbox" name="hobby" value="阅读">阅读、<input type="checkbox" name="hobby" value="运动">运动,相同name使它们成为一组,用户可选择多个爱好,方便后台获取用户多项选择。
区分页面中多个表单元素:当页面存在多个表单元素时,name属性用于区分。例如既有登录表单又有注册表单,两个表单都有用户名输入框,通过设置不同的name值,如登录表单的用户名输入框name="login_username",注册表单的name="register_username",后台能准确区分和处理不同表单的数据。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>input 表单元素</title>
</head><body><form>性别: 男 <input type="radio" name="sex"> 女 <input type="radio" name="sex"> 人妖 <input type="radio" name="sex"> <br>爱好: 吃饭 <input type="checkbox" name="hobby"> 睡觉 <input type="checkbox" name="hobby"> 打豆豆 <input type="checkbox"name="hobby"></form>
</body></html>
运行结果:
②value
在text中可以显示文字
在radio和复选框(checkbox)中当用户提交表单时,表单数据会被发送到服务器进行处理。value
属性的值会作为该单选按钮所代表选项的数据被一同提交
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>input 表单元素</title>
</head><body><form><!-- text 文本框 用户可以里面输入任何文字 -->用户名: <input type="text" name="username" value="请输入用户名"><br><!-- password 密码框 用户看不见输入的密码 -->密码: <input type="password" name="pwd"> <br>性别: 男 <input type="radio" name="sex" value="男"> 女 <input type="radio" name="sex" value="女"> 人妖 <inputtype="radio" name="sex" value="人妖"> <br><!-- checkbox 复选框 可以实现多选 -->爱好: 吃饭 <input type="checkbox" name="hobby" value="吃饭"> 睡觉 <input type="checkbox" name="hobby"> 打豆豆 <inputtype="checkbox" name="hobby"></form>
</body></html>
运行结果:
③ checked属性
主要针对于单选按钮和复选框, 主要作用一打开页面,就要可以默认选中某个表单元素.
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>input 表单元素</title>
</head><body><form><!-- text 文本框 用户可以里面输入任何文字 -->用户名: <input type="text" name="username" value="请输入用户名"><br><!-- password 密码框 用户看不见输入的密码 -->密码: <input type="password" name="pwd"> <br><!-- radio 单选按钮 可以实现多选一 --><!-- name 是表单元素名字 这里性别单选按钮必须有相同的名字name 才可以实现多选1 --><!-- 单选按钮和复选框可以设置checked 属性, 当页面打开的时候就可以默认选中这个按钮 -->性别: 男 <input type="radio" name="sex" value="男"> 女 <input type="radio" name="sex" value="女" checked="checked"> 人妖<input type="radio" name="sex" value="人妖"> <br><!-- checkbox 复选框 可以实现多选 -->爱好: 吃饭 <input type="checkbox" name="hobby" value="吃饭"> 睡觉 <input type="checkbox" name="hobby"> 打豆豆 <inputtype="checkbox" name="hobby" checked="checked"><br></form>
</body></html>
运行结果:
④ maxlength
是用户可以在表单元素输入的最大字符数, 一般较少使用.
当为表单元素设置了 maxlength
属性后,用户在该元素中输入内容时,输入的字符数量达到 maxlength
指定的值后,就无法再继续输入更多字符。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>input 表单元素</title>
</head><body><form><!-- text 文本框 用户可以里面输入任何文字 -->用户名: <input type="text" name="username" value="请输入用户名" maxlength="6"><br><!-- password 密码框 用户看不见输入的密码 -->密码: <input type="password" name="pwd"> <br><!-- radio 单选按钮 可以实现多选一 --><!-- name 是表单元素名字 这里性别单选按钮必须有相同的名字name 才可以实现多选1 --><!-- 单选按钮和复选框可以设置checked 属性, 当页面打开的时候就可以默认选中这个按钮 -->性别: 男 <input type="radio" name="sex" value="男"> 女 <input type="radio" name="sex" value="女" checked="checked"> 人妖<input type="radio" name="sex" value="人妖"> <br><!-- checkbox 复选框 可以实现多选 -->爱好: 吃饭 <input type="checkbox" name="hobby" value="吃饭"> 睡觉 <input type="checkbox" name="hobby"> 打豆豆 <inputtype="checkbox" name="hobby" checked="checked"><br></form>
</body></html>
当超过6个时不能再输入
⑶. <select> 表单元素
使用场景: 在页面中,如果有多个选项让用户选择,并且想要节约页面空间时,我们可以使用<select>标签控件定义下 拉列表。
语法:
<select>
<option>选项1</option>
<option>选项2</option>
<option>选项3</option>
…
</select>
1. <select> 中至少包含一对<option> 。
2. 在<option> 中定义 selected =“ selected " 时,当前项即为默认选中项。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>select下拉表单</title>
</head>
<body><form>籍贯: <select><option>山东</option><option>北京</option><option>天津</option><option selected="selected">火星</option></select>
</form>
</body>
</html>
⑷.<textarea> 表单元素
使用场景: 当用户输入内容较多的情况下,我们就不能使用文本框表单了,此时我们可以使用 <textarea> 标签。
在表单元素中,<textarea> 标签是用于定义多行文本输入的控件。
使用多行文本输入控件,可以输入更多的文字,该控件常见于留言板,评论。
语法:
<textarea rows="3" cols="20">
文本内容
</textarea>
1. 通过 <textarea> 标签可以轻松地创建多行文本输入框。
2. cols=“每行中的字符数” ,rows=“显示的行数”,我们在实际开发中不会使用,都是用 CSS 来改变大小。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>textarea 文本域</title>
</head><body><form>今日反馈:<textarea cols="50" rows="5">老师,我知道这个反馈留言是textarea来做的 </textarea></form>
</body></html>
三、表单标签之label标签
类比锚点链接
<label> 标签为 input 元素定义标注(标签)。
<label> 标签用于绑定一个表单元素, 当点击<label> 标签内的文本时,浏览器就会自动将焦点(光标)转到或者 选择对应的表单元素上,用来增加用户体验.
语法:
<label for="sex">男</label>
<input type="radio" name="sex" id="sex" />
核心: <label> 标签的 for 属性应当与相关元素的 id 属性相同。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>label标签</title>
</head><body><label for="text"> 用户名:</label> <input type="text" id="text"><input type="radio" id="nan" name="sex"> <label for="nan">男</label><input type="radio" id="nv" name="sex"> <label for="nv">女</label>
</body></html>
四、综合案例-注册页面
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>综合案例-注册页面</title>
</head><body><h4>青春不常在,抓紧谈恋爱</h4><table width="600"><!-- 第一行 --><tr><td>性别:</td><td><input type="radio" name="sex" id="nan"> <label for="nan"> <img src="images/man.jpg"> 男 </label><input type="radio" name="sex" id="nv"> <label for="nv"><img src="images/women.jpg"> 女</label></td></tr><!-- 第二行 --><tr><td>生日:</td><td><select><option>--请选择年份--</option><option>2001</option><option>2002</option><option>2003</option></select><select><option>--请选择月份--</option><option>1</option><option>2</option><option>3</option></select><select><option>--请选择日--</option><option>1</option><option>2</option><option>3</option></select></td></tr><!-- 第三行 --><tr><td>所在地区</td><td><input type="text" value="北京思密达"></td></tr><!-- 第四行 --><tr><td>婚姻状况:</td><td><input type="radio" name="marry" checked="checked">未婚 <input type="radio" name="marry"> 已婚 <inputtype="radio" name="marry"> 离婚</td></tr><!-- 第五行 --><tr><td>学历:</td><td><input type="text" value="博士后"></td></tr><!-- 第六行 --><tr><td>喜欢的类型:</td><td><input type="checkbox" name="love"> 妩媚的<input type="checkbox" name="love"> 可爱的<input type="checkbox" name="love"> 小鲜肉<input type="checkbox" name="love"> 老腊肉<input type="checkbox" name="love" checked="checked"> 都喜欢</td></tr><!-- 第七行 --><tr><td>个人介绍</td><td><textarea>个人简介</textarea></td></tr><!-- 第八行 --><tr><td></td><td><input type="submit" value="免费注册"></td></tr><tr><td></td><td><input type="checkbox" checked="checked"> 我同意注册条款和会员加入标准</td></tr><tr><td></td><td><a href="#"> 我是会员,立即登录</a></td></tr><tr><td></td><td><h5>我承诺</h5><ul><li>年满18岁、单身</li><li>抱着严肃的态度</li><li>真诚寻找另一半</li></ul></td></tr></table>
</body></html>
运行结果: