白乐天

道阻且长,行则将至。

HTML

开发环境搭建

安装VSCode

VSCode是一个文本编辑器,使用它来编辑HTML代码。

安装插件

  • open in browser

    右键点击 HTML 文件,通过插件直接在浏览器中打开HTML文件。

    快捷键:Alt+B

安装谷歌浏览器

通过浏览器预览和调试HTML文件。

HTML

HTML——HyperText Markup Language(超文本标记语言)

  • 超文本——链接
  • 标记——标签

标签语法

  • 标签成对出现,中间包裹内容
  • <>存放标签名
  • 结束标签的标签名前需要加/

HTML的基本结构

1
2
3
4
5
6
7
8
<html>
<head>
<title>网页标题</title>
</head>
<body>
网页主体
</body>
</html>
  • html:整个网页
  • head:网页头部
  • body:网页主体
  • title:网页标题

VSCode中生成HTML基本结构的快捷方式

  • 英文状态下的!加上EnterTab

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <!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>

    </body>
    </html>

标签之间的关系

  • 嵌套
  • 并列

标签

注释

1
<!-- xxx -->

注释标签可以通过快捷键Ctrl+/生成

标题

1
2
3
4
5
6
<h1>这是一级标题</h1>
<h2>这是二级标题</h2>
<h3>这是三级标题</h3>
<h4>这是四级标题</h4>
<h5>这是五级标题</h5>
<h6>这是六级标题</h6>

段落

1
<p>这是一个段落</p>

效果:段落独占一行,段落之间有间隙。

换行和水平线

换行和水平线标签都是单标签。

  • 换行

    1
    <br>
  • 水平线

    1
    <hr>

文本格式标签

  • 加粗

    1
    2
    3
    <strong>这是加粗的内容</strong>

    <b>这是加粗的内容</b>
  • 倾斜

    1
    2
    3
    <em>这是倾斜的内容</em>

    <i>这是倾斜的内容</i>
  • 下划线

    1
    2
    3
    <ins>这是添加下划线的内容</ins>

    <u>这是添加下划线的内容</u>
  • 删除线

    1
    2
    3
    <del>这是添加删除线的内容</del>

    <s>这是添加删除线的内容</s>

图像标签

基本语法

1
2
3
4
<img src="图片的路径" alt="替代文本" />

# src: 必需属性,用于指定图片的路径,可以是相对路径或绝对路径。
# alt: 可选属性,用于在图片无法加载时显示替代文本。

常用属性

  • widthheight

    用于设置图片的宽度和高度,可以是像素值。

    1
    <img src="example.jpg" alt="示例图片" width="200" height="100" />
  • title

    为图片提供提示文本,当鼠标悬停在图片上时显示。

    1
    <img src="example.jpg" alt="示例图片" title="这是示例图片" />
  • loading

    控制图片的加载方式,可选值有:

    • lazy(懒加载,仅当用户滚动到图片时才加载)

    • eager(默认行为,立即加载)

    1
    <img src="example.jpg" alt="示例图片" loading="lazy" />

超链接标签

超链接可以用于从一个页面跳转到另一个页面,也可以跳转到同一页面的特定位置、下载资源或触发其他行为。

基本语法

1
2
3
4
<a href="链接地址" >链接文本或内容</a>

# href:必须属性,指定超链接的目标地址。
# 链接文本或内容:用户点击的内容,可以是文字、图片或其他元素。

常用属性

  • target

    定义链接的打开方式。

    • _self:在当前窗口打开(默认值)。
    • _blank:在新窗口或标签页打开。
  • title

    提供额外信息,鼠标悬停时显示提示文本。

  • download

    提供下载功能,将链接目标作为文件下载。

注意事项

href 属性不能为空:如果未指定值,链接会变为无效。

1
<a href="#">点击无效链接</a>

音频标签

用于在网页中嵌入音频文件。

基本语法

1
2
3
<audio src="audio.mp3"></audio>

# src: 指定音频文件的路径。

常用属性

  • controls

    添加音频播放器控件。

    1
    <audio src="audio.mp3" controls></audio>
  • autoplay

    自动播放(页面加载完成后)。

    为了防止干扰用户体验,大多数浏览器会禁止自动播放,除非静音或用户交互后允许。

    1
    <audio src="audio.mp3" autoplay></audio>
  • loop

    循环播放。

    1
    <audio src="audio.mp3" loop controls></audio>

视频标签

用于在网页中嵌入视频文件。

基本语法

1
2
3
<video src="video.mp4"></video>

# src:指定视频文件的路径。

常用属性

  • controls

    显示视频控件。

    1
    <video src="video.mp4" controls></video>
  • loop

    循环播放。

    1
    <video src="video.mp4" loop controls></video>
  • muted

    默认静音播放。

    1
    <video src="video.mp4" muted controls></video>
  • autoplay

    自动播放(页面加载完成后)。

    注意:大多数浏览器要求视频自动播放时必须静音。

    1
    <video src="video.mp4" muted autoplay></video>

列表标签

无序列表

使用<ul>标签定义无序列表,使用<li>标签定义每个列表项。

1
2
3
4
5
<ul>
<li>苹果</li>
<li>香蕉</li>
<li>橙子</li>
</ul>

有序列表

使用<ol>标签定义有序列表,使用<li>标签定义每个列表项。

1
2
3
4
5
<ol>
<li>语文</li>
<li>数学</li>
<li>英语</li>
</ol>

修改序号样式

可以通过type属性修改有序列表的样式。

1
2
3
4
5
type="1":数字(默认)
type="A":大写字母
type="a":小写字母
type="I":大写罗马数字
type="i":小写罗马数字

定义列表

使用 <dl>标签定义列表,使用<dt>标签定义标题,使用<dd>标签定义描述。

1
2
3
4
5
6
7
8
9
10
<dl>
<dt>HTML</dt>
<dd>超文本标记语言</dd>

<dt>CSS</dt>
<dd>层叠样式表</dd>

<dt>JavaScript</dt>
<dd>一种脚本语言,用于开发动态交互的网页。</dd>
</dl>

注意

  • <dl>里面只能包含<dl><dd>
  • <dl><dd>里面可以包含任意内容。

表格标签

基本表格结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<table border="1">
<tr>
<th>姓名</th>
<th>年龄</th>
<th>职业</th>
</tr>
<tr>
<td>张三</td>
<td>25</td>
<td>工程师</td>
</tr>
<tr>
<td>李四</td>
<td>30</td>
<td>设计师</td>
</tr>
</table>

<table>定义表格,<tr>定义行,th定义表头单元格,<td>定义数据单元格。

在网页中,表格默认没有边框线,使用border属性可以为表格添加边框线。

表格结构标签

  • <thead>:定义表格头部。
  • <tbody>:定义表格主体。
  • <tfoot>:定义表格尾部。

合并单元格

合并行(纵向合并)

使用 rowspan 属性,合并的单元格数由 rowspan 的值决定。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<table border="1">
<tr>
<th>姓名</th>
<th>年龄</th>
<th>成绩</th>
</tr>
<tr>
<td>李华</td>
<td>19</td>
<td rowspan="2">97</td>
</tr>
<tr>
<td>李明</td>
<td>18</td>
<!-- <td>97</td> -->
</tr>
</table>

合并列(横向合并)

使用colspan属性,合并的单元格数由 colspan 的值决定。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<table border="1">
<tr>
<th>姓名</th>
<th>年龄</th>
<th>成绩</th>
</tr>
<tr>
<td>李华</td>
<td>19</td>
<td rowspan="2">97</td>
</tr>
<tr>
<td>李明</td>
<td>18</td>
<!-- <td>97</td> -->
</tr>
<tr>
<td>总结</td>
<td colspan="2">优秀</td>
</tr>
</table>

表单

输入框

1
<input type="">

type属性

通过type属性定义输入框的类型

  • text

    文本输入框 (type="text")

  • password

    密码输入框 (type="password")

    输入的内容会被掩盖(通常显示为星号或圆点)。

  • radio

    单选按钮 (type="radio")

    同一组单选按钮的 name 必须相同,用户只能选择一个。

  • checkbox

    复选框 (type="checkbox")

  • file

    文件上传框 (type="file")

placeholder属性

通过placeholder属性作为输入框的占位提示信息,用户未输入时显示。

1
<input type="text" placeholder="请输入">

name属性

主要用于标识表单字段的名称,在表单提交时,name 属性的值会作为键,输入的值作为对应的值提交。

checked属性

checked 属性是 HTML 表单元素中专门用于 单选按钮(<input type="radio">复选框(<input type="checkbox"> 的布尔属性。它用来预先设置某个选项为“选中”状态。

1
2
<input type="radio" name="group_name" checked>
<input type="checkbox" name="field_name" checked>

multiple属性

multiple 属性允许用户在某些输入元素中选择多个值。它通常用于文件上传、选择框和电子邮件地址输入。

1
<input type="file" name="files" multiple>

下拉菜单

使用<select>定义下拉菜单,使用<option>定义下拉菜单中的每个选项,在 <option> 中添加 selected 属性可以设置默认选中值,如果未设置则默认第一个选项是默认选中值。

1
2
3
4
5
<select name="field_name" id="field_id">
<option value="option1">选项1</option>
<option value="option2">选项2</option>
<option value="option3">选项3</option>
</select>

文本域标签

文本域标签用于创建多行的文本输入框,用户可以在其中输入较长的文本内容,如留言、评论等。

使用<textarea>定义文本域,标签之间的内容是默认显示的初始文本。

1
<textarea name="field_name" id="field_id" rows="行数" cols="列数"></textarea>

label标签

<label> 标签用于为 HTML 表单元素定义标签。它可以通过 for 属性绑定到一个表单控件,或者直接将表单控件嵌套在 <label> 标签内。

基本语法

  • 使用for属性绑定控件

    for 属性的值需要与目标表单控件的 id 一致。

    1
    2
    <label for="username">用户名:</label>
    <input type="text" id="username" name="username">
  • 嵌套控件

    直接将表单控件嵌套在 <label> 标签内。

    1
    2
    3
    4
    <label>
    密码:
    <input type="password" name="password">
    </label>

按钮

按钮主要用于用户交互,可以触发表单提交、运行 JavaScript 脚本,或者执行其他操作。

1
<button>普通按钮</button>

常用属性

  • button

    普通按钮,默认没有功能,配合JavaScript使用。

  • submit

    点击后提交数据到后台。

  • reset

    重置按钮,点击后将表单控件恢复默认值。

form标签

<form> 标签是用于创建 HTML 表单的容器。表单用于收集用户输入,并通过提交将数据发送到服务器进行处理。

基本语法

1
2
3
<form action="提交地址" method="请求方法">
<!-- 表单控件,例如文本框、按钮 -->
</form>

常用属性

  • action

    表单提交时的目标 URL,表示数据提交到的服务器地址。

  • method

    表单数据提交的方法,常用值为 GETPOST

布局标签

div标签

通用的块级容器,用于分组 HTML 元素,没有语义,占据一行。

1
2
3
<div>
这是一个 div 容器。
</div>

span标签

通用的行内容器,用于分组文本或其他行内元素,没有语义,不会独占一行。

1
2
3
<p>
这是一个<span>红色</span> 的单词。
</p>

字符实体

显示结果 描述 实体名称
空格 &nbsp;
< 小于号 &lt;
> 大于号 &gt;