二、HTML标签学习
1.1.1 标题标签
- 场景:在新闻和文章的页面中,都离不开标题,用来突出显示文章主题
- 代码:h系列标签
<h1>1级标题</h1>
<h2>2级标题</h2>
<h3>3级标题</h3>
<h4>4级标题</h4>
<h5>5级标题</h5>
<h6>6级标题</h6>
- 语义:1~6级标题,重要程度依次递减
- 特点:
- 文字都有加粗
- 文字都有变大,并且从h1 →h6文字逐渐减小
- 独占一行
1.1.2 小结
- 标题标签一共有几个?分别表示什么含义?
- h1标签:一级标题
- h2标签:二级标题
- h3标签:三级标题
- h4标签:四级标题
- h5标签:五级标题
- h6标签:六级标题
- 标题标签有哪些特点?
- 文字都有加粗
- 文字都有变大,但是从h1 → h6文字逐渐减小
- 独占一行
1.2.1 段落标签
- 场景:在新闻和文章的页面中,用于分段显示
- 代码:
<p>我是一段文字</p>
- 语义:段落
- 特点:
- 段落之间存在间隙
- 独占一行
1.2.2 小结
- 段落变迁的标签名是?
- p标签
- 段落标签有哪些特点?
- 段落之间存在间隙
- 独占一行
1.3.1 换行标签
- 场景:让文字强制换行显示
- 代码:<br>
- 语义:换行
- 特点:
- 单标签
- 让文字强制换行
1.4.1 水平线标签
- 场景:分割不同主题内容的水平线
- 代码:<hr>
- 语义:主题的分割转换
- 特点:
- 单标签
- 在页面中显示一条水平线
2.1 文本格式化标签的介绍
- 场景:需要让文字加粗、下划线、倾斜、
删除线等效果 - 代码:
标签 | 说明 |
b | 加粗 |
u | 下划线 |
i | 倾斜 |
s | 删除线 |
标签 | 说明 |
stong | 加粗 |
ins | 下划线 |
em | 倾斜 |
del | 删除线 |
- 语义:突出重要的强调语境
2.2 标签语义化(了解)
- 实际项目开发中选择标签的原则:标签语义化
- 即:根据语义选择对应正确的标签
- 如:需要写标题,就使用h系列标签
- 如:需要写段落,就使用p标签
- 好处:
- 对人:好理解,好记忆
- 对机器:有利于机器解析,对搜索引擎(SEO)有帮助
- 推荐:
- strong、 ins、 em、del,表示的强调语义更强烈!
3.1.1 图片标签的介绍
- 场景:在网页中显示图片
- 代码:
<img src=" " alt=" ">
- 特点:
- 单标签
- img标签需要展示对应的效果,需要借助标签的属性进行设置!
3.1.1 图片标签的介绍
- 标签的完整结构图
- 属性注意点
- 标签的属性写在开始标签内部
- 标签上可以同时存在多个属性
- 属性之间以空格隔开
- 标签名与属性之间必须以空格隔开
- 属性之间没有顺序之分
3.1.3 图片标签的alt属性
- 属性名:alt
- 属性值:替换文本
- 当图片加载失败时,才显示alt的文本
- 当图片加载成功时,不会显示alt的文本
3.1.4 图片标签的title属性
- 属性名:title
- 属性值:提示文本
- 当鼠标悬停时,才显示的文本
- 注意点:title属性不仅仅可以用于图片标签,还可以用于其他标签
3.1.5 图片标签的width和height属性
- 属性名:| width和height
- 属性值:宽度和高度(数字)
- 注意点:
- 如果只设置width或height中的一个,另一个没设置的会自动等比例缩放(此时图片不会变形)
- 如果同时设置了width和height两个,若设置不当此时图片可能会变形
3.2.1 路径的介绍
- 场景:页面需要加载图片,需要先找到对应的图片
- 类似于:生活中两个人,我去找你,需要路径才能找到
- 同理:页面需要找到图片,也是需要通过路径才能找到
- 路径可分为:
- 绝对路径(了解)
- 相对路径(常用)
3.2.2 绝对路径(了解)
- 绝对路径:指目录下绝对位置,可直接到达目标位置,通常从盘符开始的路径
- 例如:
- 盘符开头:D:\steam
- 完整的网络地址:黑马程序员官网-IT培训机构|java培训|前端培训|python培训|大数据培训(了解)
3.2.3 相对路径(常用)
- 概念普及:
- 当前文件:当前的html网页
- 目标文件:要找到的图片
- 相对路径:|从当前文件开始出发找目标文件的过程
- 相对路径分类:
- 同级目录
- 下级目录
- 上级目录
3.2.4 相对路径-同级目录
- 同级目录:当文件和目标文件在同一目录中
- 类似于:我(当前文件)和你(目标文件)都在大厅(一个文件夹中)
- 生活中:两个人独处一室,我想找你,直接喊名字即可!
- 代码步骤:直接写目标文件的名字即可
- 方法一:<img src="目标图片.gif">
- 方法二:<img src="./目标图片.gif">
3.2.5 相对路径-下级目录
- 下级目录:目标文件在下级目录中
- 类似于:我在大厅,你累了去卧室休息了,我现在要找到你!
- 先知道你去了哪一个房间 →房间名:卧室
- 进入这个房间 → 进入
- 此时又独处一室→直接喊你名字
- 代码步骤:
- 先知道在哪个文件夹里面→文件夹名字
- 进入这个文件夹 →/
- 此时看到目标文件直接喊她→直接写目标文件名字
3.2.6 相对路径-上级目录
- 上级目录:目标文件在上级目录中
- 类似于:乾坤大挪移,我在卧室,你还在大厅,我现在要找到你!
- 先要出卧室,来到大厅→出去
- 此时又独处一室→直接喊你名字
- 代码步骤:
- 先出当前文件夹,到上一级目录→../
- 此时看到目标文件直接喊她 → 直接写目标文件
3.3.1 音频标签的介绍
- 场景:在页面中插入音频
- 代码:
<audio src="images/music.mp3" controls></audio>
- 常见属性
属性名 | 功能 |
src | 视频的路径 |
controls | 显示播放的控件 |
autoplay | 自动播放(部分浏览器不支持) |
loop | 循环播放 |
- 注意点
音频标签目前支持三种格式:MP3、Wav、Ogg
3.4.1 视频标签的介绍
- 场景:在页面中插入
- 代码:
- 常见属性:
属性名 | 功能 |
src | 视频的路径 |
controls | 显示播放的控件 |
autoplay | 自动播放(谷歌浏览器中需要配合muted实现静音播放) |
loop | 循环播放 |
- 注意点:
- 视频标签目前支持三种格式:MP4、WebM、Ogg
4.1 链接标签的介绍
- 场景:点击之后,从一个页面跳转到另一个页面
- 称呼:a标签、超链接、锚链接
- 代码<a href=" ./目标网页.html">超链接</a>
- 特点:
- 双标签,内部可以包裹内容
- 如果需要a标签点击之后去指定的页面,需要设置a标签href属性
4.4 链接标签的target属性
- 属性名:target
- 属性值:目标网页的打开形式
取值 | 效果 |
_self | 默认值,在当前窗口跳转(覆盖原网页) |
_blank | 在新窗口中跳转(保留原网页) |
<a href="https://www.baidu.com/" target="_blank">百度</a>
综合案例-招聘
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h1>腾讯科技高级web前端开发岗位</h1>
<hr>
<h2>职位描述</h2>
<p>负责重点项目的前端技术方案和架构的研发和维护工作</p>
<h2>岗位要求</h2>
<p>5年以上前端开发经验,<strong>精通html5/css3/javascript等</strong> web开发技术;</p>
<p>熟悉bootstrap, vue, angularjs, reactjs等框架,熟练掌握一种以上;</p>
<p> 代码风格严谨,能高保真还原设计稿,能兼容各种浏览器;</p>
<p> 对web前端的性能优化以及web常见漏洞有一定的理解和相关实践;</p>
<p> 具备良好的分析解决问题能力,能独立承担任务,有开发进度把控能力;</p>
<p> 责任心强,思路路清晰,抗压能力好,具备良好的对外沟通和团队协作能力。</p>
<h2>工作地址</h2>
<p>上海市-徐汇区-腾云大厦</p>
<img src="images/map.jpg" alt="" title="这是地图">
</body>
</html>
综合案例-跳转
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h1>今日搜索热词</h1>
<hr>
<h2>1.安卡贝拉</h2>
<p> 阿卡贝拉(意大利:Acappella)即无伴奏合唱。其起源可追溯至中世纪的教会音乐,当时的教会音乐只以人声清唱,并不应用乐器。音频示例:<a href="one.html">阿卡贝拉《千与千寻》</a></p>
<h2>2、翻唱</h2>
<p>"翻唱"是指将已经发表并由他人演唱的歌曲根据自己的风格重新演唱,包括重新填词,编曲。现在已有不少明星,都在翻唱他人的歌,不断在翻唱中突破自己,给大家带来不一样的风格。视频示例:<a href="two.html" target="_self">
有一种悲伤(翻唱) -《A Kind of Sorrow》 </a></p>
</body>
</html>
one.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h1>阿卡贝拉《千与千寻》-AZA微唱团</h1>
<hr>
<h2>音频</h2>
<audio src="images/music.mp3" controls></audio>
</body>
</html>
two.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h1>有一种悲伤(翻唱) -《A Kind of Sorrow》</h1>
<hr>
<h2>视频</h2>
<video src="images/video.mp4" controls></video>
</body>
</html>
三、列表标签
1. 列表的应用场景
- 场景:在网页中按照行展示关联性的内容,如:新闻列表、排行榜、账单等
- 特点:按照行的方式,整齐显示内容
- 种类:无序列表、有序列表、自定义列表
2.1 无序列表
- 场景:在网页中表示一组无顺序之分的列表,如:新闻列表。
- 标签组成:
签名标 | 说明 |
ul | 表示无序列表的整体,用于包裹li标签 |
li | 表示无序列表的每一项,用于包含每一行的内容 |
- 显示特点:
- 列表的每一项前默认显示圆点标识
- 注意点:
- ul标签中只允许包含li标签
- li标签可以包含任意内容
2.2 小结
- 有序列表由几个标签组成?分别表示什么?
- ol标签:表示无序列表的整体
- li标签:表示无序列表的每一项
- 有序列表标签的嵌套规范是什么?
- ol标签中只允许嵌套li标签
- li标签中可以嵌套任意内容
3.1 有序列表
- 场景:在网页的底部导航中通常会使用自定义列表实现。
- 标签组成:
标签名 | 说明 |
ol | 表示有序列表的整体,用于包裹li标签 |
li | 表示有序列表的每一项,用于包含每一行的内容 |
- 显示特点:
- 在网页的底部导航中通常会使用自定义列表实现
- 注意点:
- dl标签中只允许包含dt/dd标签
- li标签可以包含任意内容
3.2 小结
- 有序列表由几个标签组成?分别表示什么?
- ol标签:表示无序列表的整体
- li标签:表示无序列表的每一项
- 有序列表标签的嵌套规范是什么?
- ol标签中只允许嵌套li标签
- li标签中可以嵌套任意内容
4.1 自定义列表
- 场景:在网页的底部导航中通常会使用自定义列表实现。
- 标签组成:
标签名 | 说明 |
dl | 表示自定义列表的整体,用于包裹dt/dd标签 |
dt | 表示自定义列表的主题 |
dd | 表示自定义列表的针对主题的每一项内容 |
- 显示特点:
- dd前会默认显示缩进效果
- 注意点:
- dl标签中只允许包含dt/dd标签
- dt/dd标签可以包含任意内容
四、表格标签
1.1 表格标签的基本标签
- 场景:在网页中以行+列的单元格的方式整齐展示和数据,如:学生成绩表
- 基本标签:
标签名 | 说明 |
table | 报个整体,可用于包裹多个tr |
tr | 表格每行,可用于包裹td |
td | 表格单元格,可用于包裹内容 |
- 注意点:
- 标签的嵌套关系:table>tr>td
2.1 表格相关属性
- 场景:设置表格基本展示效果
- 常见相关属性
属性名 | 属性值 | 效果 |
border | 数字 | 边框高度 |
width | 数字 | 表格宽度 |
height | 数字 | 表格宽度 |
- 注意点:
- 实际开发时针对样式效果推荐使用css设置
3.1 表格标题和表头单元格标签
- 场景:
- 其他标签:
标签名 | 名称 | 说明 |
caption | 表格大标题 | 表示表格整体大标题,默认在表格整体顶部居中位置显示 |
th | 表头单元格 | 表示一列小标题,通常用于表格第一行,默认内部文字加粗并居中显示 |
- 注意点:
- caption标签书写在table标签内部
- th标签书写在tr标签内部(用于替换td标签)
4.1 表格的结构标签(了解)
- 场景:让表格的内容结构分组,突出表格的不同部分(头部、主体、底部),使语义更加清晰
- 结构标签:
标签名 | 名称 |
thead | 表格头部 |
tbody | 表格主体 |
tfoot | 表格底部 |
- 注意点:
- 表格结构标签内部用于包裹tr标签
- 表格的结构标签可以省略
5.1 合并单元格-思路
- 场景:将水平或垂直的多个单元格合并成一个单元格
5.2合并单元格-代码实现
- 合并单元格步骤:
- 明确合并哪几个单元格
- 通过左上原则,确定保留谁删除谁
- 上下合并→只保留最上的,删除其他
- 左右合并→只保留最左的,删除其他
- 给保留的单元格设置:跨行合并(rowspan)或者跨列合并(colspan)
属性名 | 属性 | 说明 |
rowspan | 合并单元格的个数 | 跨行合并,将多行的单元格垂直合并 |
colspan | 合并单元格的个数 | 跨列合并,将多列的单元格水平合并 |
- 注意点:
- 只有同一个结构标签中的单元格才能合并,不能跨结构标签合并(不能跨:thead、tbody、tfoot)
1.1 input系列标签的基本介绍
- 标签名: input
- 场景:在网页中显示收集用户信息的表单效果,如:登录页、注册页
- input标签可以通过type属性值的不同,展示不同效果
- type属性值:
input | type属性 | 说明 |
input | text | 文本框,用于输入单行文本 |
input | password | 密码框,用于输入密码 |
input | radio | 单选框,用于多选一 |
input | checkbox | 多选框,用于多选多 |
input | file | 文件选择,用于之后上传文件 |
input | submit | 提交按钮,用于提交 |
input | reset | 重置按钮,用于重置 |
input | button | 普通按钮,默认无功能,之后配合js添加功能 |
1.2 input系列标签-文本框
- 场景:在网页中显示输入单行文本的表单控件
- type属性值:text
- 常用属性:
属性名 | 说明 |
placehoder | 占位符。提示用户输入内容的文本 |
1.3 input系列标签-密码框
- 场景:在网页中显示输入密码的表单控件
- type属性值:password
- 常用属性(同文本框):
属性名 | 说明 |
placehoder | 占位符。提示用户输入内容的文本 |
- 注意点
- type属性值不要拼错或者多加空格,否则相当于设置了默认值状态:text→文本框
1.4 input系列标签-单选框
- 场景:在网页中显示多选一的单选表单控件
- type属性值: radio
- 常用属性:
属性名 | 说明 |
name | 分组,用相同name属性值的单选框为一组,一组中只能有一个被选中 |
checked | 默认选中 |
- 注意点:
- name属性对于单选框有分组功能
- 有相同name属性值的单选框为一组,一组中只能同时有一个被选中
1.5 input系列标签-复选框
- 场景:在网页中显示多选多的多选表单控件
- type属性值:checkbox
- 常用属性(同单选框)
1.6 input系列标签-文件选择
- 场景:在网页中显示文件选择的表单控件
- type属性值:file
- 常用属性:
1.7 input系列标签-按钮
- 场景:在网页中显示不同功能的按钮表单控件
- type属性值:
- 注意点:
- 如果需要实现以上按钮功能,需要配合form标签使用
- form使用方法:用form标签把表单标签一起包裹起来即可
2.1 button按钮标签
- 场景:在网页中显示用户点击的按钮
- 标签名: button
- type属性值(同input的按钮系列):
- 注意点:
- 谷歌浏览器中button默认是提交按钮
- button标签是双标签,更便于包裹其他内容:文字、图片等
3.1 select下拉菜单标签
- 场景:在网页中提供多个选择项的下拉菜单表单控件
- 标签组成:
- select标签下拉菜单的整体
- option标签:下拉菜单的每一项
- 常见属性:
- selected:下拉菜单的默认选中
4.1 textarea文本域标签
- 场景:在网页中提供可输入多行文本的表单控件
- 标签名:textarea
- 常见属性:
- cols:规定了文本域内可见宽度
- rows:规定了文本域内可见行数
- 注意点:
- 右下角可以拖拽改变大小
- 实际开发时针对于样式效果推荐用CSS设置
5.1 label标签
- 场景:常用于绑定内容与表单标签的关系
- 标签名:label
- 使用方法①:
- 使用label标签把内容(如:文本)包裹起来
- 在表单标签士添加id属性
- 在label标签的for属性中设置对应的id属性值
- 使用方法②:
- 直接使用label标签把内容(如:文本)和表单标签一起包裹起来
- 需要把label标签的for属性删除即可
四、语义化标签
1.1没有语义的布局标签-div和span
- 场景:实际开发网页时会大量频繁的使用到div和span这两个没语义的布局标签
- div标签:一行只显示一个(独占一行)
- spar标签:一行可以显示多个
2.1有语义的布局标签(了解)
- 场景:在HTML5新版本中,推出了一些有语义的布局标签供开发者使用
- 标签:
- 注意点:
以上标签显示特点和div一致,但是比div多了不同的语义
2. 常见字符实体
- 场景:在网页中展示特殊符号效果时,需要使用字符实体替代
- 结构:&英文;
- 常见字符实体: