html标签和字符实体

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级标签,重要程度依次递减。

1级标签,字体最大。

6级标签,字体最小。

特点:

  • 文字都有加粗
  • 文字都有变大,并且从h1->h6文字逐渐减小
  • 独占一行

在vscode中创建一个html文件,并使用标题标签:

image-20230507135506399

Alt+B打开浏览器后的效果如下:

image-20230507135537238
段落标签

场景:在新闻和文章的页面中,用于分段显示

代码:<p>我是一段文字</p>

语义:段落

特点:

  • 段落之间存在间隙
  • 独占一行

案例:

image-20230507141647319

浏览器渲染效果:

image-20230515124331297
换行标签

场景:让文字强制换行显示

代码:

<br>

语义:换行

特点:

  • 单标签
  • 让文字强制换行
水平线标签

场景:给内容加一个分隔

代码:<hr>

语义:水平线

特点:

  • 单标签
  • 给内容进行一个区域的划分

代码:

image-20230507142359610

案例效果:

image-20230507142247540

标题和内容之间加了一条水平线进行分隔,在最后一条内容上面多进行了一次换行。

1.2文本格式化标签

场景:需要让文字加粗下划线倾斜删除线等效果。

代码:

标签 说明
b 加粗
u 下划线
i 倾斜
s 删除线
strong 加粗
ins 下划线
em 倾斜
del 删除线

语义:突出重要性的语境。

1.3 媒体标签
图片标签

标签的完整结构图:

image-20230507144248154

属性注意点:

  • 标签的属性写在开始标签内部
  • 标签上可以同时存在多个属性
  • 属性之间以空格隔开
  • 标签名宇属性之间必须以空格隔开
  • 属性之间没有顺序之分

1.图片标签的alt属性

属性名:alt

属性值:替换文本

  • 当图片加载失败时,才显示alt的文本
  • 当图片加载成功时,不会显示alt的文本

代码:

<body>
    <img src="./source/xue.jpg" alt="图片加载失败">
</body>

加载成功:

image-20230507145022872

加载失败:

image-20230507145101993

2.图片的title属性

属性名:title

属性值:提示文本

  • 当鼠标悬停时,才显示的文本

注意点:title属性不仅仅可以用于图片标签,还可以用于其他标签

代码:

    <img src="./source/xue.jpg" alt="图片加载失败" title="雪下的真大呀!">

效果:

xue

3.width和height属性

属性名:width和height

属性值:宽度和高度(数字)

注意点:

  • 如果只设置width或height中的一个,另一个没设置的会自动等比例缩放(此时图片不会变形)
  • 如果同时设置了width和height两个,若设置不当,此时图片可能会变形
路径

路径的介绍

场景:页面需要加载图片,需要找到对应的图片

类似于:生活中的两个人,我要去找你,需要通过一定的路径才能找到!

同理:页面需要找到图片,也是需要通过路径才能找到

路径可分为:

  • 绝对路径(了解)
  • 相对路径(常用)
绝对路径

指目录下的绝对路径,可以直接到达目标位置,通常从盘符开始的路径

例如:

相对路径(常用)

概念普及:

  • 当前文件:当前的html文件
  • 目标文件:需要找到的图片

相对路径:从当前文件开始出发找目标文件的过程

相对路径的分类:

  • 同级目录
  • 下级目录
  • 上级目录

同级目录

当前文件和目标文件在同一目录中。

类似于:我(当前文件)和你(目标文件)都在大厅(一个文件夹中)

  • 生活中:两个人同处一室,我想找你,直接喊名字即可!

代码步骤:直接写目标文件的名字即可

  • 方法一:<img src="目标图片.gif">
  • 方法二:<img src="./目标图片.gif">

下级目录

目标文件在下级目录中

image-20230507205912188

<img src="images/目标图片.gif">

类似于:我在大厅,你累了去卧室休息了,我现在要找到你!

  1. 先知道你去了哪一个房间->房间名:卧室
  2. 进入这个房间->进入
  3. 此时又独处一室->直接喊你名字

代码步骤:

  1. 先知道哪个文件夹里面 ->文件夹名字
  2. 进入这个文件夹 -> /
  3. 此时看到目标文件直接喊她 -> 直接写目标文件名字

上级目录

目标文件在上级目录中

image-20230507210459885

类似于:乾坤大挪移,我在卧室,你还在大厅,我现在要找到你!

  1. 先要出卧室,来到大厅 -> 出去
  2. 此时又独处一室 -> 直接喊你名字

代码步骤:

  1. 先出当前文件夹,到上一级目录 -> ../
  2. 此时看到目标文件直接喊她 -> 直接写目标文件
音频标签

场景:在页面中插入音频

代码:<audio src="./music.mp3" controls></audio>

常见属性:

属性名 功能
src 音频的路径
controls 显示播放的控件
autoplay 自动播放(部分浏览器不支持)
loop 循环播放

注意点:

  • 音频标签目前支持3种格式:MP3、Wav、Ogg
视频标签

场景:在页面中插入视频

代码:<video src="./video.mp4" controls>

常见属性:

属性名 功能
src 视频的路径
controls 显示播放的控件
autoplay 自动播放(谷歌浏览器中需配合muted实现静音播放)
loop 循环播放

注意点:

视频标签目前支持3种格式:MP4、WebM、Ogg

1.4 链接标签

场景:点击之后,从一个页面跳转到另一个页面

称呼:a标签、超链接、锚链接

代码:<a href="./目标网页.html">超链接</a>

特点:

  • 双标签,内部可以包裹内容
  • 如果需要a标签点击后去指定页面,需要设置a标签的href属性

href可以让a标签具有跳转页面的功能,代码案例:

<a href="http://www.baidu.com">跳转到百度</a>
<a href="./01标题标签.html">点我呀,去01标题标签页面</a>
<a href="#"></a>

当开发初期时,我们还不知到跳转网址,href的值可以写为#(空链接)

target属性

属性值:目标网页的打开方式

取值 效果
_self 默认值,在当前窗口中跳转(覆盖原页面)
_blank 在新窗口中跳转(保留原页面)
1.5 列表标签
列表的应用场景

场景:在网页中按照行展示关联性的内容,如:新闻列表、排行榜、账单等

特点:按照行的方式,整齐显示内容

种类:无序列表、有序列表、自定义列表

无序列表

场景:在网页中表示一组无顺序之分的列表,如:新闻列表

标签组成:

标签名 说明
ul 表示无序列表的整体,用于包裹li标签
li 表示无序列表的每一项,用于包含每一行的内容

显示特点:

  • 列表的每一项前默认显示圆点标识

注意:

  • ul标签中只允许包含li标签
  • li标签可以包含任意内容

代码案例:

    <h2>水果列表</h2>
    <ul>
        <li>榴莲</li>
        <li>香蕉</li>
        <li>苹果</li>
        <li>哈密瓜</li>
        <li>火龙果</li>
    </ul>
有序列表

场景:在页面中表示一组有顺序之分的列表,如:排行榜

标签组成:

标签名 说明
ol 表示有序列表的整体,用于包裹li标签
li 表示有序列表的每一项,用于包含每一行的内容

显示特点:

  • 列表的每一项前默认显示序号标识

注意点:

  • ol标签中只允许包含li标签
  • li标签可以包含任意内容

代码案例:

    <h1>成绩排行榜</h1>
    <ol>
        <li>张三:100分</li>
        <li>李四:80分</li>
        <li>王五:60分</li>
    </ol>
自定义列表

场景:在网页的底部导航中通常会使用自定义列表

标签组成:

标签名 说明
dl 表示自定义列表的整体,用于包裹dt/dd标签
dt 表示自定义列表的主题
dd 表示自定义列表的针对主题的每一项内容

显示特点:

  • dd前会默认显示缩进效果

注意点:

  • dl标签中只允许包含dt/dd标签
  • dt/dd标签可以包含任意内容

代码案例:

    <dl>
        <dt>帮助中心</dt>
        <dd>账户管理</dd>
        <dd>购物指南</dd>
    </dl>
1.6 表格标签

场景:在网页中以行+列的单元格的方式显示整齐展示和数据,如:学生成绩表

基本标签:

标签名 说明
table 表格整体
tr 表格每行,可用于包裹td
td 表格单元格,可用于包裹内容

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

表格的属性

场景:设置表格的基本展示效果

常见相关属性:

属性名 属性值 效果
border 数字 边框宽度
width 数字 表格宽度
height 数字 表格高度

注意:实际开发中针对样式效果推荐用CSS设置

代码案例:

    <table border="1" width="500" height="300">
        <tr>
            <td>姓名</td>
            <td>成绩</td>
        </tr>
        <tr>
            <td>张三</td>
            <td>100分</td>
        </tr>
        <tr>
            <td>李四</td>
            <td>100分</td>
        </tr>
        <tr>
            <td>王五</td>
            <td>80分</td>
        </tr>
    </table>
表格标题和表头单元格标签

场景:在表格中表示整体大标题和一列小标题

其他标签:

标签名 名称 说明
caption 表格大标题 表示表格整体的大标题,默认在表格整体顶部居中显示
th 表头单元格 表示一列小标,通常用于表格第一行,默认内部文字加粗并居中显示

注意:

  • caption标题书写在table的内部:table>caption
  • th标签写在tr标签的内部:tr>th

代码案例:

    <table border="1" width="500" height="300">
        <caption><b>学生成绩单</b></caption>
        <tr>
            <th>姓名</th>
            <th>成绩</th>
        </tr>
        <tr>
            <td>张三</td>
            <td>100分</td>
        </tr>
        <tr>
            <td>李四</td>
            <td>100分</td>
        </tr>
        <tr>
            <td>王五</td>
            <td>80分</td>
        </tr>
    </table>
表格的结构标签

场景:让表格的内容结构分组,突出表格不同部分(头部、主题、底部),使语义更加清晰

结构标签:

标签名 名称
thead 表格的页眉
tbody 表格的主体
tfoot 表格的页脚

注意点:

  • 表格结构标签内部用于包裹tr标签
  • 表格的结构标签可以省略

将上面的案例拿下来修改一下即可:

   <table border="1" width="500" height="300">
        <caption><b>学生成绩单</b></caption>
        <thead>
            <tr>
                <th>姓名</th>
                <th>成绩</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>张三</td>
                <td>100分</td>
            </tr>
            <tr>
                <td>李四</td>
                <td>100分</td>
            </tr>
            <tr>
                <td>王五</td>
                <td>80分</td>
            </tr>
        </tbody>
        <tfoot>
            <tr>
                <td>总分</td>
                <td>280分</td>
            </tr>
        </tfoot>
    </table>
合并单元格

合并单元格步骤:

  1. 明确合并哪几个单元格

  2. 通过通过左上原则,确定保留谁删除谁

    • 上下合并 -> 只保留最上的,删除其他的
    • 左右合并 ->只保留最左的,删除其他
  3. 给保留的单元格设置:跨行合并(rowspan)或者跨列合并(colspan)

    属性名 属性值 说明
    rowspan 合并单元格的 个数 跨行合并,并将多行的单元格垂直合并
    colspan 合并单元格的个数 跨列合并,将多列的单元格水平合并

注意点:

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

代码案例:

    <table border="1" width="500" height="300">
        <caption><b>学生成绩单</b></caption>
        <thead>
            <tr>
                <th>姓名</th>
                <th>成绩</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>张三</td>
                <td rowspan="2">100分</td>
            </tr>
            <tr>
                <td>李四</td>
            </tr>
            <tr>
                <td>王五</td>
                <td>80分</td>
            </tr>
        </tbody>
        <tfoot>
            <tr>
                <td colspan="2">全部合格</td>
            </tr>
        </tfoot>
    </table>
1.7 表单
input系列标签

场景:在网页中显示收集用户信息的表单效果,如:登录页、注册页、问卷调查等

标签名:input

  • input标签可以通过type属性值的不同,展示不同效果

type属性值:

type属性值 说明
text 文本框,用于输入单行文本
password 密码框,用于输入密码
radio 单选框,用于多选一
checkbox 复选框(多选框),用于多选多
file 文件选择,用于之后上传文件
submit 提交按钮,用于提交
reset 重置按钮,用于重置
button 普通按钮,默认无功能,之后配合js添加功能

案例:

用input标签,以及之前学习的标签完成下图所实现的html代码:

image-20230510000803558

代码如下:

 <p>
        昵称: <input type="text">
    </p>
    <p>
        密码: <input type="password">
    </p>
    <p>
        性别: <input type="radio">男 <input type="radio">女
    </p>
    <p>
        爱好: <input type="checkbox">敲代码
        <input type="checkbox">熬夜
        <input type="checkbox">掉头发
    </p>
    <p>
        <input type="file">
    </p>
    <p>
        <input type="submit" value="提交">
        <input type="reset" value="重置">
        <input type="button" value="普通按钮">
    </p>

input-文本框(text)-常用属性

属性名 说明
placeholder 占位符,提示用户输入内容

代码如下:

昵称: <input type="text" placeholder="请输入用户名">
密码: <input type="password" placeholder="请输入密码">

image-20230510001941810

input-单选框(radio)属性

场景:在网页显示多选一的单选表单控件

type属性值:radio

常用属性:

属性名 说明
name 分组。有相同name属性值的单选框为一组,一组同时只能有一个被选中
checked 默认选中

注意点:

  • name属性对于单选框有分组功能
  • 有相同name属性值的单选框为一组,一组只能同时有一个被选中

案例:

 性别: <input type="radio" name="sex">男 <input type="radio" name="sex">女

checked属性同样适用于input:checkbox

input-file文件选择

场景:在网页中显示文件选择的表单控件

type属性值:file

常用属性:

属性名 说明
multiple 多文件选择

代码示例:

 <input type="file" multiple>

image-20230510003232245

input按钮

场景:在网页中显示不同功能的按钮表单控件

type属性值:

type属性值 说明
submit 提交按钮,点击之后提交数据给后端服务器
reset 重置按钮,点击之后恢复表单默认值
button 普通按钮,默认无功能,之后会配合js添加功能

注意点:

  • 如果需要实现以上按钮功能,需要配合form标签使用
  • form使用方法:用form标签把表单标签一起包裹起来即可
button按钮标签

场景:在网页中显示用户点击的按钮

标签名:button

type属性值(同input系列):

type属性值 说明
submit 提交按钮,点击之后提交数据给后端服务器
reset 重置按钮,点击之后恢复表单默认值
button 普通按钮,默认无功能,之后会配合js添加功能

注意点:

  • 谷歌浏览器中button默认是提交按钮
  • button标签是双标签,更便于包裹其他内容:文字、图片等
select下拉菜单标签

场景:在网页中提供多个选择项的下拉菜单表单控件

标签组成:

  • select标签:下拉菜单的整体
  • option标签:下拉菜单的每一项

常见属性:

  • selected:下拉菜单的默认选中

代码示例:

   所选城市:
    <select>
        <option value="上海" selected>上海</option>
        <option value="北京">北京</option>
        <option value="广州">广州</option>
        <option value="深圳">深圳</option>
    </select>

image-20230510005018579

textarea文本域标签

场景:在网页中提供可输入多行文本的表单控件

标签名:textarea

常见属性:

  • cols:规定了文本域可见宽度
  • rows:规定了文本域内可见行数

注意点:

  • 右下角可以拖拽改变大小
  • 实际开发时针对于样式效果推荐用CSS设置
label标签

场景:常用于绑定内容与表单标签的关系

标签名:label

使用方法①:

  1. 使用label标签把内容(如:文本)包裹起来
  2. 在表单标签上添加id属性
  3. 在label标签的for属性中设置对应的id属性值

使用方法②:

  1. 直接使用label标签把内容(如:文本)和表单标签一起包裹起来
  2. 需要把label标签的for属性删除即可

代码示例①:

    性别: <input type="radio" id="man" name="sex"> <label for="man">男</label>
    <input type="radio" id="women" name="sex"> <label for="women">女</label>

代码示例②:

  性别: <label><input type="radio" id="man" name="sex">男</label>
    <label><input type="radio" id="women" name="sex">女</label>

同样的功能,第二中比较简单。

1.8 语义化标签
没有语义的布局标签

场景:实际开发网页时会大量频繁的使用到div和span这两个没语义的布局标签

div标签:一行只能显示一个(独占一行)

span标签:一行可以显示多个

有语义的布局标签(了解)

场景:在HTML5新版本中,推出了一些有语义的布局标签供开发者使用

标签:

标签名 语义
header 网页头部
nav 网页导航
footer 网页底部
aside 网页侧边栏
section 网页区块
article 网页文章

上列标签对应一下下图,可以快速理解标签语义:

image-20230510010816526

注意点:

  • 以上标签显示特点和div一致,但是比div多了不同的语义

2、字符实体

2.1 HTML中的空格合并现象
image-20230510011208303 image-20230510011224350

从上图可以看出,不管我们加了多少个空格,浏览器只会显示一个空格。

小知识:在html代码中并列出现多个空格、换行、缩进等,最终浏览器只会解析出一个空格。这是html的规范标准。

如果我们要在一段文字中间加入多个空格,可以利用字符实体来实现。

2.2 常见字符实体

场景:在网页中展示特殊符号效果时,需要使用字符实体替代

结构:&英文

常见字符实体:

image-20230510012237534

3、标签语义化(了解)

实际的开发中选择标签的原则是:标签语义化

  • 即:根据语义选择对应正确的标签
  • 如:需要写标题,就用h系列表情
  • 如:需要写段落,就使用p标签
  • ·····

好处:

  • 对人:好理解,好记忆
  • 对机器:有利于机器解析,对搜索引擎(SEO)有帮助

推荐:

  • strong、ins、em、del,表示的强调语义更强烈!

4、练习

练习1

用学过的知识点完成下图内容:

image-20230510012526489
练习2

用表单标签完成下图内容:

image-20230510013021916
posted @ 2023-05-15 12:44  travellerα  阅读(58)  评论(0)    收藏  举报