前端学习第二天-html基础
一、列表标签
目标:能够使用 无序列表、有序列表、自定义列表 标签,实现网页中列表结构的搭建
1. 列表的应用场景
场景:在网页中按照行展示关联性的内容,如:新闻列表、排行榜、账单等
特点:按照行的方式,整齐显示内容
种类:无序列表、有序列表、自定义列表
无序列表最常用;有序列表偶尔使用;自定义列表底部导航用
2. 无序列表
场景:在网页中表示一组无顺序之分的列表;如:新闻列表
代码:
<ul>
<li></li>
</ul>
标签组成:
标签名 | 属性 |
---|---|
ul | 表示无序列表的整体,用于包裹li标签 |
li | 表示无序列表的每一项,用于包含每一行的内容 |
显示特点:列表的每一项前默认显示圆点标识
注意点:
1. ul标签中只允许包含li标签
2. li标签可以包含任意内容
3. 有序列表
场景:在网页中表示一组有顺序之分的列表,如:排行榜
代码:
<ol>
<li></li>
</ol>
标签组成:
标签名 | 说明 |
---|---|
ol | 表示有序列表的整体,用于包裹li标签 |
li | 表示有序列表的每一项,用于包含每一行的内容 |
显示特点:列表的每一项前默认显示序号标识
注意点:
1. ol标签中只允许包含li标签
2. li标签可以包含任意内容
4. 自定义列表
场景:在网页底部导航中通常会使用自定义列表实现
代码:
<dl>
<dt></dt>
<dd></dd>
</dl>
标签组成:
标签名 | 说明 |
---|---|
dl | 表示自定义列表的整体,用于包裹dt/dd标签 |
dt | 表示自定义列表的主题 |
dd | 表示自定义列表的针对主题的每一项内容 |
显示特点:dd前会默认显示缩进效果
注意点:
1. dl标签中只允许包含dt/dd标签
2. dt/dd标签可以包含任意内容
二、表格标签
目标:能够使用 表格相关标签和属性,实现网页中表格结构的搭建
1. 表格的基本标签
场景:在网页中以行+列的单元格方式整齐展示和数据,如:学生成绩表
代码:
<table>
<tr>
<td>姓名</td>
<td>成绩</td>
<td>评分</td>
</tr>
<tr>
<td>张三</td>
<td>95</td>
<td>优秀</td>
</tr>
<tr>
<td>李四</td>
<td>100</td>
<td>优秀</td>
</tr>
<tr>
<td>王五</td>
<td>82</td>
<td>中等</td>
</tr>
</table>
基本标签:
标签 | 说明 |
---|---|
table | 表格整体,用于包裹多个tr |
tr | 表格每行,可用于包裹td |
td | 表格单元格,可用于包裹内容 |
标签的嵌套关系:table > tr > td
2. 表格的相关属性
场景:设置表格的基本展示效果
常见相关属性:
属性名 | 属性值 | 示例 | 效果 |
---|---|---|---|
border | 数值 | border=“1” | 边框宽度 |
width | 数值 | width=“200px” | 表格宽度 |
height | 数值 | height=“200px” | 表格高度 |
bgcolor | 颜色 | bgcolor=“red” | 设置表格背景颜色 |
align | left/right/center | align=“left” | 设置表格的水平对齐方式(默认左对齐) |
bordercolor | 颜色 | bordercolor=“green” | 设置边框颜色 |
cellspacing | 数值 | cellspacing=“5” | 调整单元格与单元格之间的间距 |
cellpadding | 数值 | cellpadding=“5” | 单元格和内容之间的间距 |
rules | rows、cols | rules="rows“ | rows:只显示表格内部的横线; cols:只显示表格内部的竖线 all: 横纵线都显示实现1px |
frame | above、below | frame=“above” | above:显示上边的线 below:显示下边的线 |
代码:
<table border="1" width="200px" height="200px" bgcolor="yellow" align="center" bordercolor="blue" cellspacing="0" cellpadding="0"
rules="rows">
<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>
注意点:实际开发时针对于样式效果推荐用CSS设置
3. 表格标题和表头单元格标签
场景:在表格中表示整体大标题和一列小标题
标签属性:
标签名 | 名称 | 说明 | 用法 |
---|---|---|---|
caption | 表格大标题 | 表示表格整体大标题,默认在表格整体顶部居中位置显示 | caption标签写在table标签内部 |
th | 表头单元格 | 表示一列小标题,通常用于表格第一行,默认内部文字加粗并居中显示 | th标签书写在tr标签内部(用于替换td标签) |
代码:
<table border="1px" align="center">
<caption>学生成绩表</caption>
<tr>
<th>姓名</th>
<!-- <td>姓名</td> -->
<th>成绩</th>
<!-- <td>成绩</td> -->
<th>评分</th>
<!-- <td>评分</td> -->
</tr>
<tr>
<td>张三</td>
<td>95</td>
<td>优秀</td>
</tr>
<tr>
<td>李四</td>
<td>100</td>
<td>优秀</td>
</tr>
<tr>
<td>王五</td>
<td>82</td>
<td>中等</td>
</tr>
</table>
示例:
4. 表格的结构标签
场景:让表格的内容结构分组,突出表格的不同部分(头部、主体、底部),使用语义更加清晰
结构标签:
标签名 | 名称 |
---|---|
thead | 表格头部 |
tbody | 表格主体 |
tfoot | 表格底部 |
注意点:
1. 表格结构标签内部用于包裹tr标签
2. 表格的结构标签可以省略
5. 表格合并单元格
场景:将水平或垂直多个单元格合并成一个单元格
合并单元格步骤:
1. 明确合并哪几个单元格
2. 通过左上原则,确定保留谁删除谁
2.1 上下合并 → 只保留最上的,删除其他
2.2 左右合并 → 只保留最左的,删除其他
3. 给保留的单元格设置:跨行合并(rowspan)或者跨列合并(colspan)
保留单元格设置的属性:
属性名 | 属性值 | 说明 |
---|---|---|
rowspan | 合并单元格的个数 | 跨行合并,将多行的单元格垂直合并 |
colspan | 合并单元格的个数 | 跨列合并,将多列的单元格水平合并 |
代码与效果:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
table {
width: 661px;
height: 378px;
color: #ae5d7e;
}
</style>
</head>
<body>
<table cellspacing="5" border="1px" cellpadding="5" rules="all" align="center">
<tr>
<td width="80px">会员姓名</td>
<td></td>
<td width="80px">出生日期</td>
<td></td>
</tr>
<tr>
<td>身份证号</td>
<td colspan="3"></td>
<!-- <td>13</td> -->
<!-- <td>14</td> -->
</tr>
<tr>
<td>通信电话</td>
<td colspan="3"></td>
<!-- <td>13</td> -->
<!-- <td>14</td> -->
</tr>
<tr>
<td>联系电话</td>
<td colspan="3"></td>
<!-- <td>13</td> -->
<!-- <td>14</td> -->
</tr>
<tr>
<td>会员卡号</td>
<td colspan="3"></td>
<!-- <td>13</td> -->
<!-- <td>14</td> -->
</tr>
</table>
</body>
</html>
注意点:只有同一个结构标签中的单元格才能合并,不能跨结构标签合并(不能跨:thead、tbody、tfoot)
三、表单标签
1. input系列标签
场景:在网页中显示收集用户信息的表单效果;如:登录页、注册页
标签名:<input type="text">
特性:input标签可以通过type属性值的不同,展示不同效果
type属性值:
标签名 | type属性值 | 说明 |
---|---|---|
input | text | 文本框,用于输入单行文本 |
input | password | 密码框,用于输入密码 |
input | radio | 单选框,用于单选一 |
input | checkbox | 多选框,用于多选多 |
input | file | 文件选择,用于之后上传文件 |
input | submit | 提交按钮,用于提交 |
input | reset | 重置按钮,用于重置 |
input | button | 普通按钮,默认无功能,之后配合js添加功能 |
1.1 input系列标签-文本框
场景:在网页中显示输入单行文本的表单控件
type属性值:text
常用属性:
属性名 | 说明 |
---|---|
placeholder | 占位符。提示用户输入内容的文本 |
代码:<input type="text" placeholder="请输入手机号">
1.2 input系列标签-密码框
场景:在网页中显示输入密码的表单控件
type属性值:password
常用属性(同文本框):
属性名 | 说明 |
---|---|
placeholder | 占位符。提示用户输入内容的文本 |
注意点:type属性值不要拼错或者多加空格,否则相当于设置了默认值状态:text→文本框
代码:<input type="password" placeholder="请输入密码">
1.3 input系列标签-单选框
场景:在网页中显示多选一的单选表单控件
type属性值:radio
常用属性:
属性名 | 说明 |
---|---|
name | 分组。有相同name属性值的单选框为一组,一组中同时只能有一个被选中 |
checked | 默认选中 |
注意点:
1. name属性对于单选框有分组功能
2. 有相同name属性值的单选框为一组,一组中同时只能有一个被选中
代码:<input type="radio" name="男" id="">男
<input type="radio" name="女" id="">女
1.4 input系列标签-复选框
场景:在网页中显示多选多的多选表单控件
type属性值:checkbox
常用属性:
属性名 | 说明 |
---|---|
checkbox | 默认选中 |
代码:<input type="checkbox" name="男" id="">男
<input type="checkbox" name="女" id="">女
1.5 input系列标签-文件选择
场景:在网页中显示文件选择的表单控件
type属性:file
常用属性:
属性名 | 说明 |
---|---|
multiple | 多文件选择 |
代码:input type="file" name="" id="" multiple>
1.6 input系列标签-按钮
场景:在网页中显示不同功能的按钮表单控件
type属性值:
标签名 | type属性值 | 说明 |
---|---|---|
input | submit | 提交按钮。点击之后提交数据给后端服务器 |
input | reset | 重置按钮。点击之后恢复表单默认值 |
input | button | 普通按钮。默认无功能,之后配合js添加功能 |
注意点:
1. 如果需要实现以上按钮功能,需要配合from标签使用
2. from使用方法:用from标签把表单标签一起包裹起来即可
代码:
<form action="">
<input type="submit" value="提交按钮">
<input type="reset" value="重置按钮">
<input type="button" value="普通按钮">
</form>
2. button按钮标签
场景:在网页中显示用户点击的按钮
标签名:<button></button>
type属性值(同input的按钮系列):
标签名 | 属性值 | 说明 |
---|---|---|
input | submit | 提交按钮。点击之后提交数据给后端服务器 |
input | reset | 重置按钮。点击之后恢复表单默认值 |
input | button | 普通按钮。默认无功能,之后配合js添加功能 |
注意点:
1. 谷歌浏览器中button默认是提交按钮
2. button是双标签。更便于包裹其他内容:文字,图片等
代码:
<button type="reset">提交按钮</button>
<button type="reset">重置按钮</button>
<button type="button">普通按钮</button>
3. select下拉菜单标签
场景:在网页中提供多个选择项的下拉菜单表单控件
标签组成:
1. select标签:下来菜单的整体
2. option标签:下拉菜单的每一项
常见属性:
1. selected:下拉菜单的默认选中
代码:
<select name="" id="">
<option value="">北京</option>
<option value="">上海</option>
<option value="">广州</option>
<option value="">重庆</option>
<option value="">天津</option>
</select>
4. textarea文本域标签
场景:在网页中提供可输入多行文本的表单控件
标签名:textarea
常见属性:
1. cols:规定了文本域内可见宽度
2. rows:规定了文本域内可见行数
注意点:
1. 右下角可以拖拽改变大小
2. 实际开发时针对于样式效果推荐CSS设置
代码:
<textarea name="" id="" cols="30" rows="10">Lorem ipsum, dolor sit amet consectetur adipisicing elit. Quia dolor numquam veniam enim rem soluta consectetur quo itaque, omnis autem dolores inventore adipisci aliquam hic unde dicta cupiditate ad eius!</textarea>
5. label标签
场景:常用于绑定内容与表单标签的关系
标签名:label
使用方法1:
1. 使用label标签把内容(如:文本)包裹起来
2. 在表单标签上添加id属性
3. 在label标签的for属性中设置对应的id属性值
使用方法2:
1. 直接使用label标签把内容(如:文本)和表单标签一起包裹起来
2. 需要把label标签的for属性删除即可
代码:
<!-- 方法1 -->
<input type="checkbox" id="one">
<label for="one">程序员</label>
<!-- 方法2 -->
<label>
<input type="checkbox">熬夜
</label>
四、语义化标签
目标:能够认识开发中常用的**没有语义布局标签(div、span)**和 有语义化的布局标签
1. 没有语义的布局标签-div和span
场景:实际开发网页时会大量频繁使用到div和span这两个没语义的布局标签
div标签:一行只显示一个(独占一行)
span标签:一行可以显示多个
代码:
<!-- div标签,独占一行 -->
<div>程序员</div>
<div>程序员</div>
<div>程序员</div>
<!-- span标签,一行显示多个 -->
<span>程序员</span>
<span>程序员</span>
<span>程序员</span>
2. 有语义化的布局标签
场景:在HTML5新版本中,推出了一些有语义化的布局标签供开发者使用
标签:
标签名 | 语义 |
---|---|
header | 网页头部 |
nav | 网页导航 |
footer | 网页底部 |
aside | 网页侧边栏 |
section | 网页区块 |
article | 网页文章 |
注意点:以上标签显示特点和div一致,但是比div多了不同的语义
代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
*{margin:0;padding:0;}
header {
width: 755px;
height: 100px;
background-color: red;
text-align: center;
margin: 0 auto;
margin-bottom: 5px;
}
nav {
width: 755px;
/* height: 50px; */
background-color: yellow;
text-align: center;
margin: 0 auto;
}
.wy {
display: flex;
margin: 0 auto;
justify-content: center;
}
aside {
width: 50px;
height: 300px;
background-color: blue;
text-align: center;
margin-top: 5px;
margin-bottom: 5px;
}
section {
width: 700px;
margin-top: 5px;
margin-left: 5px;
height: 300px;
background-color: burlywood;
}
article {
width: 200px;
height: 100px;
background-color: green;
margin: 0 auto;
margin: 0 auto;
}
footer {
width: 755px;
height: 100px;
background-color: blueviolet;
margin-top: 5px;
margin: 0 auto;
}
</style>
</head>
<body>
<!-- 网页头部 -->
<header>网页头部</header>
<!-- 网页导航 -->
<nav>网页导航</nav>
<div class="wy">
<!-- 网页侧边栏 -->
<aside>网页侧边栏</aside>
<!-- 网页区块 -->
<section>网页区块
<!-- 网页文章 -->
<article>网页文章</article>
</section>
</div>
<!-- 网页底部 -->
<footer>网页底部</footer>
<div></div>
</body>
</html>
五、字符实体
1.常见字符实体
场景:在网页中展示特殊符号效果时,需要使用字符实体替代
结构:&英文;
常见字符实体:
显示结果 | 描述 | 实体名称 |
---|---|---|
空格 |  ; | |
< | 小于号 | <; |
> | 大于号 | >; |
& | 和号 | &; |
" | 引号 | "; |
’ | 撇号 | &apos;(IE不支持) |
¢ | 分(cent) | ¢; |
£ | 镑(pound) | £; |
¥ | 元(yen) | ¥; |
€ | 欧元(euro) | &euro; |
© | 版权(copyright) | ©; |