第一章:列表标签

1.1 列表标签的应用场景

  • 场景:在网页中按照 展示关联的内容,如:新闻列表、排行榜、账单等。
  • 特点:按照行的方式,整齐显示内容。
  • 种类:无序列表、有序列表、自定义列表。

1.png

1.2 无序列表

  • 场景:在网页中表示一组无顺序之分的列表,如:新闻列表。
  • 标签组成: | 标签名 | 说明 | | —- | —- | | ul | 表示无序列表的整体,用于包裹 li 标签 | | li | 表示无序列表的每一项,用于包含每一行的内容 |
  • 显示特点:列表的每一项前默认显示圆点标识。

注意:

  • ul 标签中只允许包含 li 标签。
  • li 标签可以包含任意内容。
  • 示例:
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>无序列表</title>
  8. </head>
  9. <body>
  10. <h2>水果列表</h2>
  11. <ul>
  12. <li>榴莲</li>
  13. <li>香蕉</li>
  14. <li>苹果</li>
  15. <li>哈密瓜</li>
  16. <li>火龙果</li>
  17. </ul>
  18. </body>
  19. </html>

1.3 有序列表

  • 场景:在网页中表示一组有顺序之分的列表,如:排行榜。
  • 标签组成: | 标签名 | 说明 | | —- | —- | | ol | 表示有序列表的整体,用于包裹 li 标签 | | li | 表示有序列表的每一项,用于包含每一行的内容 |
  • 显示特点:列表的每一项前默认显示序号表示。

注意:

  • ol 标签中只允许包含 li 标签。
  • li 标签可以包含任意内容。
  • 示例:
<!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>有序列表</title>
</head>
<body>
    <h2>成绩排行榜</h2>
    <ol>
        <li>张三:100分</li>
        <li>李四:80分</li>
        <li>王五:65分</li>
    </ol>
</body>
</html>

1.4 自定义列表

  • 场景:在网页的底部导航中通常会使用自定义列表实现。
  • 标签组成: | 标签名 | 说明 | | —- | —- | | dl | 表示自定义列表的整体,用于包裹 dt 和 dd 标签 | | dt | 表示自定义列表的主题 | | dd | 表示自定义列表针对主题的每一项内容 |
  • 显示特点:dd 前默认显示缩进效果。

注意:

  • dl 标签只允许包含 dt 和 dd 标签。
  • dt 和 dd 标签可以包含任意内容。
  • 示例:
<!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>自定义列表</title>
</head>
<body>
    <dl>
        <dt>帮助中心</dt>
        <dd>账户管理</dd>
        <dd>购物指南</dd>
        <dd>订单操作</dd>
    </dl>
</body>
</html>

1.5 总结

  • 无序列表 最常用 ,有序列表 偶尔用 ,自定义列表 底部导航用

第二章:表格标签

2.1 表格的基本标签

  • 场景:在网页中以行和列的单元格的方式整齐展示数据,如:学生成绩表。
  • 基本标签: | 标签名 | 说明 | | —- | —- | | table | 表格整体,可以用于包裹多个 tr | | tr | 表格每行,可以用于包裹 td | | td | 表格单元格,可用于包裹内容 |

注意:标签的嵌套关系是 table > tr > td 。

  • 示例:
<!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>表格的基本标签</title>
</head>
<body>
    <h2>学生成绩表</h2>
    <table>
        <tr>
            <td>姓名</td>
            <td>成绩</td>
            <td>评语</td>
        </tr>
        <tr>
            <td>张三</td>
            <td>100</td>
            <td>非常好</td>
        </tr>
        <tr>
            <td>李四</td>
            <td>50</td>
            <td>还行</td>
        </tr>
    </table>
</body>
</html>

2.2 表格相关属性(了解)

  • 场景:设置表格基本展示效果。
  • 常见相关属性: | 属性名 | 属性值 | 效果 | | —- | —- | —- | | border | 数字 | 边框宽度 | | width | 数字 | 表格宽度 | | height | 数字 | 表格高度 |

注意:实际开发的时候,针对样式效果推荐使用 CSS 来设置

  • 示例:
<!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>表格的基本标签</title>
</head>
<body>
    <h2>学生成绩表</h2>
    <!-- 
        border:边框宽度。
        width:边框宽度。
        height:边框高度。
    -->
    <table border="1" width="200" height="100">
        <tr>
            <td>姓名</td>
            <td>成绩</td>
            <td>评语</td>
        </tr>
        <tr>
            <td>张三</td>
            <td>100</td>
            <td>非常好</td>
        </tr>
        <tr>
            <td>李四</td>
            <td>50</td>
            <td>还行</td>
        </tr>
    </table>
</body>
</html>

2.3 表格标题和表头单元格标签

  • 场景:在表格中表示整体大标题和一列小标题。
  • 其他标签: | 标签名 | 名称 | 说明 | | —- | —- | —- | | caption | 表格大标题 | 表示表格整体大标题,默认在表格整体顶部居中位置显示 | | th | 表头单元格 | 表示一列小标题,通常用于表格第一行,默认内部文字加粗并居中显示 |

注意:

  • caption 标签书写在 table 标签内部。
  • th 标签书写在 tr 标签内部,用于替换 td 标签。
  • 示例:
<!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>表格标题和表头单元格标签</title>
</head>
<body>
    <table border="1" width="300" height="200">
        <!-- 表格标题:用于表示表格整体大标题。 -->
        <caption>学生成绩表</caption>
        <tr>
            <!-- 表头单元格:表示一列小标题。 -->
            <th>姓名</th>
            <th>成绩</th>
            <th>评语</th>
        </tr>
        <tr>
            <td>张三</td>
            <td>100</td>
            <td>非常好</td>
        </tr>
        <tr>
            <td>李四</td>
            <td>50</td>
            <td>还行</td>
        </tr>
    </table>
</body>
</html>

2.4 表格的结构标签(了解)

  • 场景:让表格的内容结构分组,突出表格的不同部分(头部、主题、底部),使得语义更加清晰。
  • 结构标签: | 标签名 | 说明 | | —- | —- | | thead | 表格头部 | | tbody | 表格主体 | | tfoot | 表格底部 |

注意:

  • 表格结构标签内部用于包裹 tr 标签。
  • 表格的结构标签可以省略。
  • 示例:
<!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>表格的结构标签</title>
</head>
<body>
    <table>
        <caption>
            <h2>学生成绩表</h2>
        </caption>
        <thead>
            <tr>
                <th>姓名</th>
                <th>成绩</th>
                <th>评语</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>张三</td>
                <td>100</td>
                <td>非常好</td>
            </tr>
            <tr>
                <td>李四</td>
                <td>50</td>
                <td>还行</td>
            </tr>
        </tbody>
        <tfoot>
            <tr>
                <td>总分</td>
                <td>150</td>
                <td>可以</td>
            </tr>
        </tfoot>
    </table>
</body>
</html>

2.5 合并单元格

  • 场景:将 水平或垂直 多个单元格合并成 一个单元格
  • 分类:
    • 跨行合并(垂直合并成一个)。
    • 跨列合并(水平合并成一个)。
  • 合并单元格的步骤:
    • ① 明确合并哪几个单元格。
    • ② 通过左上原则,确定保留谁删除谁:
      • 上下合并 —> 只保留最上的,删除其他。
      • 左右合并 —> 只保留最左的,删除其他。
    • ③ 给保留的单元格设置:跨行合并(rowspan)和跨列合并(colspan)。

注意:只有同一个结构标签中的单元格才能合并,不能跨结构标签合并(不能跨:thead、tbody 和 tfoot)。

  • 示例:
<!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>表格标签之跨行合并</title>
</head>
<body>
    <table border="1" width="300" height="200">
        <!-- 表格标题:用于表示表格整体大标题。 -->
        <caption>
            <h2>学生成绩表</h2>
        </caption>
        <tr>
            <!-- 表头单元格:表示一列小标题。 -->
            <th>姓名</th>
            <th>成绩</th>
            <th>评语</th>
        </tr>
        <tr>
            <td>张三</td>
            <!-- 跨行合并 -->
            <td rowspan="2">100</td>
            <td>非常好</td>
        </tr>
        <tr>
            <td>李四</td>
            <td>还行</td>
        </tr>
        <tr>
            <td>总结</td>
            <td>200</td>
            <td>还行</td>
        </tr>
    </table>
</body>
</html>
  • 示例:
<!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>表格标签之跨列合并</title>
</head>
<body>
    <table border="1" width="300" height="200">
        <!-- 表格标题:用于表示表格整体大标题。 -->
        <caption>
            <h2>学生成绩表</h2>
        </caption>
        <tr>
            <!-- 表头单元格:表示一列小标题。 -->
            <th>姓名</th>
            <th>成绩</th>
            <th>评语</th>
        </tr>
        <tr>
            <td>张三</td>
            <td>100</td>
            <td>非常好</td>
        </tr>
        <tr>
            <td>李四</td>
            <td>50</td>
            <td>还行</td>
        </tr>
        <tr>
            <td>总分</td>
            <td colspan="2">150</td>
        </tr>
    </table>
</body>
</html>

第三章:表单标签

3.1 input 系列标签

3.1.1 input 系统标签的基本介绍

  • 场景:在网页中显示收集用户信息的表单效果,如:登录页、注册页。
  • 标签名:input(input 标签可以通过 type 属性值的不同,展示不同的效果)。
  • type 属性值: | 标签名 | type 属性值 | 说明 | | —- | —- | —- | | input | text | 文本框,用于输入单行文本 | | input | password | 密码框,用于输入密码 | | input | radio | 单选框,用于多选一 | | input | checkbox | 多选框,用于多选多 | | input | file | 文件选择,用于上传文件 | | input | submit | 提交按钮,用于提交 | | input | reset | 重置按钮,用于重置 | | input | button | 普通按钮,默认无功能,需要配合 js 实现功能 |
  • 示例:
<!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>input 标签的基本使用</title>
</head>
<body>
    <!-- 写什么就显示什么 -->
    文本框:<input type="text" name="" id=""> <br>
    <!-- 书写的内容都会变成点点显示 -->
    密码框:<input type="password" name="" id=""> <br>
    单选框:<input type="radio" name="sex" id=""> 男 
           <input type="radio" name="sex" id=""> 女 <br>
    多选框:<input type="checkbox" name="interest" id=""> 睡觉 
           <input type="checkbox" name="interest" id=""> 吃饭
           <input type="checkbox" name="interest" id=""> 打豆豆 <br>
    上传:<input type="file" name="" id=""> <br>       
</body>
</html>

3.1.2 input 系列标签 — 文本框

  • 场景:在网页中显示 输入单行文本 的表单控件。
  • type 属性值:text 。
  • 常用属性: | 属性名 | 说明 | | —- | —- | | placeholder | 占位符,提示用户输入内容的文本 |
  • 示例:
<!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>表单占位符</title>
</head>
<body>
    <input type="text" name="" id="" placeholder="请输入用户名"> <br>
</body>
</html>

3.1.3 input 系列标签 — 密码框

  • 场景:在网页中显示 输入密码 的表单控件。
  • type 属性值:password 。
  • 常用属性(同文本框): | 属性名 | 说明 | | —- | —- | | placeholder | 占位符,提示用户输入内容的文本 |

注意:type 属性值不要拼错或者多加空格,否则相当于设置了默认状态 text 。

  • 示例:
<!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>表单占位符</title>
</head>
<body>
    <input type="password" name="" id="" placeholder="请输入密码">
</body>
</html>

3.1.4 name 属性和 value 属性的介绍

  • name 属性:当前控件的含义,提交之后可以告诉后端发送过去的数据是什么含义。
  • value 属性:用户输入的内容,提交之后会发送给后端服务器。

注意:后端接收到数据的格式是:name 的属性值 = value 的属性值。

2.PNG

3.1.5 input 系列标签 — 单选框

  • 场景:在网页中显示 多选一的单选 表单控件。
  • type 属性值:radio 。
  • 常用属性: | 属性名 | 说明 | | —- | —- | | name | 分组,有相同 name 属性值的单选框为一组,一组中同时只能有一个被选中 | | checked | 默认选中 |

注意:

  • name 属性对于单选框有分组功能。
  • 有相同 name 属性值的单选框为一组,一组中只能同时有一个被选中。
  • 示例:
<!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>单选框</title>
</head>
<body>
    性别:<input type="radio" name="gender" id="" value="男"> 男
         <input type="radio" name="gender" id="" value="女" checked> 女 
</body>
</html>

3.1.6 input 系列标签 — 多选框

  • 场景:在网页中显示 多选多的多选 表单控件。
  • type 属性值:checkbox。 | 属性名 | 说明 | | —- | —- | | checked | 默认选中 |
  • 示例:
<!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>多选框</title>
</head>
<body>
    兴趣:<input type="checkbox" name="hobby" id="" value="吃饭"> 吃饭
         <input type="checkbox" name="hobby" id="" value="睡觉" checked> 睡觉
         <input type="checkbox" name="hobby" id="" value="学习"> 学习
</body>
</html>

3.1.7 input 系列标签 — 文件选择

  • 场景:在网页中显示 文件选择 的表单控件。
  • type 属性值:file 。 | 属性名 | 说明 | | —- | —- | | multiple | 多文件选择 |
  • 示例:
<!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>文件选择</title>
</head>
<body>
    <!-- multiple 表示一次可以上传多个 -->
    上传:<input type="file" name="file" id="" multiple>
</body>
</html>

3.1.8 input 系列标签 — 按钮

  • 场景:在网页中 显示不同功能的按钮 的表单控件。
  • type 属性值: | 标签名 | type 属性值 | 说明 | | —- | —- | —- | | input | submit | 提交按钮,点击之后提交数据到后端服务器。 | | input | reset | 重置按钮,点击之后恢复表单默认值。 | | input | button | 普通按钮,默认无功能,需要配置 js 实现功能。 |

注意:

  • 如果需要实现以上按钮功能,需要配合 form 标签使用。
  • form 使用方法:使用 form 标签将表单标签包裹起来即可。
  • 示例:
<!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>input-按钮</title>
</head>
<body>
    <form action="#" method="POST">
        用户名:<input type="text" name="username" id="" placeholder="请输入用户名"> <br>
        密码:<input type="password" name="password" id="" placeholder="请输入密码"> <br>
        <!-- 按钮 -->
        <input type="submit" value="提交">
        <input type="reset" value="重置">
        <input type="button" value="普通按钮">
    </form>
</body>
</html>

3.2 button 按钮标签

  • 场景:在网页中显示用户点击的按钮。
  • 标签名:button 。
  • type 属性值: | 标签名 | type 属性值 | 说明 | | —- | —- | —- | | button | submit | 提交按钮,点击之后提交数据到后端服务器。 | | button | reset | 重置按钮,点击之后恢复表单默认值。 | | button | button | 普通按钮,默认无功能,需要配置 js 实现功能。 |

注意:

  • Chrome 浏览器中的 button 默认是提交按钮。
  • button 标签是双标签,更便于包裹其他内容,如:文字、图片等。
  • 示例:
<!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>button</title>
</head>
<body>
    <button type="submit">提交</button>
    <button type="reset">重置</button>
    <button type="button">普通按钮</button>
</body>
</html>

3.3 select 下拉菜单标签

  • 场景:在网页中提供多个选择项的下拉菜单表单控件。
  • 标签组成:
    • select 标签:下拉菜单的整体。
    • option 标签:下拉菜单的每一项。
  • 常见属性:selected,表示下拉菜单的默认选中项。
  • 示例:
<!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>下拉菜单</title>
</head>
<body>
    所属城市:<select name="city" id="">
               <option value="北京">北京</option>
               <option value="天津">天津</option>
               <option value="南京" selected>南京</option>
               <option value="广州">广州</option>
            </select>
</body>
</html>

3.4 textarea 文本域标签

  • 场景:在网页中提供可输入多行文本的表单控件。
  • 标签名:textarea。
  • 常见属性:
    • rows:规定了文本域内可见行数。
    • cols:规定了文本域内可见宽度。

注意:

  • 右小角可以拖拽改变大小。
  • 实际开发的时候,针对样式效果 推荐使用 CSS 设置
  • 示例:
<!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>文本域</title>
</head>
<body>
    留言:<textarea rows="3" cols="60"></textarea>
</body>
</html>

3.5 label 标签

  • 场景:常用于绑定内容和表单标签的关系。
  • 标签名:label 。
  • 使用方式 ① :
    • 使用 label 标签将内容(如:文本)包裹起来。
    • 在标签标签上添加 id 属性。
    • 在 label 标签的 for 属性中设置对应的 id 属性值。
  • 使用方式 ② :

    • 直接使用 label 标签将内容(如:文本)和表单标签一起包裹起来。
    • 需要将 label 标签的 for 属性删除。
  • 示例:

<!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>label 标签</title>
</head>
<body>
    性别:
    <input type="radio" name="gender" id="male" value="男"> <label for="male">男</label>
    <input type="radio" name="gender" id="female" value="女" checked> <label for="female">女</label>

    <br>
    <br>

    性别: 
    <label>
        <input type="radio" name="gender" id="" value="男"> 男
    </label>
    <label>
        <input type="radio" name="gender" id="" value="女" checked> 女 
    </label>

</body>
</html>

第四章:语义化标签

4.1 没有语义的布局标签( div 和 span)

  • 场景:实际开发网页的时候,会大量频繁的使用到 div 和 span 标签。
  • div 标签:一行只显示一个(独占一行)。
  • span 标签:一行可以显示多个。

  • 示例:

<!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>div 和 span 标签</title>
</head>
<body>
    普通文字
    <div>这是 div 标签</div>
    <div>这是 div 标签</div>

    普通文字
    <span>这是 span 标签</span>
    <span>这是 span 标签</span>
</body>
</html>

4.2 有语义化的标签(了解)

  • 场景:在 HTML5 版本中,推出了一些有语义的布局标签供开发者使用。
  • 标签: | 标签名 | 语义 | | —- | —- | | header | 网页头部 | | nav | 网页导航 | | footer | 网页底部 | | aside | 网页侧边栏 | | section | 网页区块 | | article | 网页文章 |

3.PNG

注意:以上标签显示特点和 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>有语义化的标签</title>
</head>
<body>
    <header>网页头部</header>
    <nav>网页导航</nav>
    <aside>网页侧边栏</aside>
    <section>网页区块</section>
    <article>网页文章</article>
    <footer>网页底部</footer>
</body>
</html>

第五章:字符实体

5.1 HTML 中的空格合并现象

  • 场景:如果在 html 代码中同时并列出现多个空格、换行、缩进等,最终浏览器只会解析出一个空格。

  • 示例:

<!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>HTML 中的空格合并现象</title>
</head>
<body>
    <!-- 网页不认识多个空格,只认识一个 -->
    这是 HTML 文档,现在要学               习字符实体。
</body>
</html>

5.2 常见的字符实体

  • 场景:在网页中展示特殊符号效果时,需要使用字符实体来代替。
  • 结构:&英文;
  • 常见字符实体:

4.PNG