HTML 基础语法
HTML(HyperText Markup Language,超文本标记语言)是用于描述网页结构的标记语言。
HTML 本身并不是编程语言,它主要负责定义网页中的内容和结构,例如标题、段落、图片、链接、表格等。
1. HTML 基本结构
一个最基本的 HTML 页面如下:
html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>我的网页</title>
</head>
<body>
<h1>Hello HTML</h1>
<p>这是我的第一个网页。</p>
</body>
</html>结构说明
html
<!DOCTYPE html>声明当前文档使用 HTML5。
html
<html>HTML 文档的根元素,整个网页内容都包含在其中。
html
<head>用于存放网页的配置信息,例如:
- 字符编码
- 页面标题
- CSS 文件
- JavaScript 文件
- SEO 信息
html
<body>网页中真正显示给用户看的内容通常都写在 <body> 中。
2. HTML 标签
HTML 使用标签描述网页内容。
基本格式:
html
<标签名>内容</标签名>例如:
html
<p>Hello World</p>其中:
text
<p>是开始标签。
text
</p>是结束标签。
中间的:
text
Hello World是标签中的内容。
3. 标签嵌套
HTML 标签可以互相嵌套。
例如:
html
<div>
<p>Hello HTML</p>
</div>需要注意:
标签应该按照正确的顺序嵌套。
正确:
html
<div>
<p>内容</p>
</div>错误:
html
<div>
<p>内容</div>
</p>4. HTML 属性
标签可以通过属性提供额外的信息。
基本格式:
html
<标签名 属性名="属性值">内容</标签名>例如:
html
<a href="https://example.com">访问网站</a>其中:
html
href="https://example.com"就是 <a> 标签的属性。
一个标签可以拥有多个属性:
html
<img src="image.jpg" alt="图片" width="300" />5. 标题标签
HTML 提供六级标题:
html
<h1>一级标题</h1>
<h2>二级标题</h2>
<h3>三级标题</h3>
<h4>四级标题</h4>
<h5>五级标题</h5>
<h6>六级标题</h6>标题等级从:
text
h1 → h6逐渐降低。
一般来说,一个页面中最重要的标题使用:
html
<h1>例如:
html
<h1>HTML 学习笔记</h1>
<h2>HTML 基础语法</h2>
<h3>HTML 标签</h3>6. 段落标签
使用 <p> 定义段落。
html
<p>这是第一段文字。</p>
<p>这是第二段文字。</p>浏览器通常会自动在段落之间添加一定的间距。
7. 换行
使用 <br> 进行换行:
html
你好<br />
世界显示效果类似:
text
你好
世界<br> 属于没有内容的标签,因此不需要成对出现。
8. 水平线
使用 <hr> 创建水平分隔线:
html
<p>第一部分</p>
<hr />
<p>第二部分</p>通常用于分隔不同内容区域。
9. 文本格式
粗体
html
<strong>重要内容</strong>例如:
html
<p>这是一个 <strong>重要内容</strong>。</p>斜体或强调
html
<em>强调内容</em>删除线
html
<del>删除内容</del>上标
html
x<sup>2</sup>显示:
text
x²下标
html
H<sub>2</sub>O显示:
text
H₂O10. 超链接
使用 <a> 创建超链接。
基本格式:
html
<a href="目标地址">链接文字</a>例如:
html
<a href="https://example.com">访问 Example</a>新标签页打开
html
<a href="https://example.com" target="_blank">
访问 Example
</a>其中:
html
target="_blank"表示在新的标签页中打开链接。
11. 图片
使用 <img> 标签插入图片:
html
<img src="image.jpg" alt="图片描述" />常见属性:
text
src指定图片路径。
text
alt图片无法显示时的替代文字,同时也有利于无障碍访问。
例如:
html
<img src="./images/avatar.png" alt="头像" />也可以指定大小:
html
<img
src="./images/avatar.png"
alt="头像"
width="200"
/>12. 列表
HTML 列表主要分为:
- 无序列表
- 有序列表
无序列表
使用:
html
<ul>配合:
html
<li>例如:
html
<ul>
<li>HTML</li>
<li>CSS</li>
<li>JavaScript</li>
</ul>效果:
text
• HTML
• CSS
• JavaScript有序列表
使用:
html
<ol>例如:
html
<ol>
<li>学习 HTML</li>
<li>学习 CSS</li>
<li>学习 JavaScript</li>
</ol>效果:
text
1. 学习 HTML
2. 学习 CSS
3. 学习 JavaScript13. div 和 span
div
<div> 是一个非常常见的块级容器。
例如:
html
<div>
<h2>个人信息</h2>
<p>用户名:MoonlitBoy</p>
</div>div 本身没有特殊含义,主要用于:
- 页面布局
- 内容分组
- 配合 CSS 设置样式
- 配合 JavaScript 操作页面
span
<span> 通常用于包裹一小段行内内容。
例如:
html
<p>
Hello
<span>HTML</span>
</p>它经常配合 CSS 使用:
html
<p>
Hello
<span class="highlight">HTML</span>
</p>14. class 和 id
HTML 中经常通过 class 和 id 标记元素。
class
html
<p class="text">Hello</p>多个元素可以拥有相同的 class:
html
<p class="text">HTML</p>
<p class="text">CSS</p>
<p class="text">JavaScript</p>通常用于批量设置 CSS 样式。
id
html
<h1 id="title">HTML 基础语法</h1>在同一个页面中,一个 id 通常应该只对应一个元素。
可以简单理解为:
text
class → 可以重复
id → 通常唯一15. 表格
HTML 使用 <table> 创建表格。
例如:
html
<table>
<tr>
<th>姓名</th>
<th>年龄</th>
</tr>
<tr>
<td>Tom</td>
<td>18</td>
</tr>
<tr>
<td>Jack</td>
<td>20</td>
</tr>
</table>常见标签:
| 标签 | 作用 |
|---|---|
<table> | 定义表格 |
<tr> | 定义一行 |
<th> | 定义表头单元格 |
<td> | 定义普通单元格 |
可以理解为:
text
table
├─ tr
│ ├─ th
│ └─ th
│
└─ tr
├─ td
└─ td16. 表单
HTML 表单通常用于收集用户输入。
基本结构:
html
<form>
<input type="text" />
</form>文本输入框
html
<input type="text" />密码输入框
html
<input type="password" />单选框
html
<input type="radio" name="gender" /> 男
<input type="radio" name="gender" /> 女相同 name 的单选按钮属于同一组。
复选框
html
<input type="checkbox" /> HTML
<input type="checkbox" /> CSS按钮
html
<button>提交</button>完整示例
html
<form>
<label>
用户名:
<input type="text" />
</label>
<br />
<label>
密码:
<input type="password" />
</label>
<br />
<button type="submit">登录</button>
</form>17. 语义化标签
HTML5 提供了许多具有明确含义的标签。
例如:
html
<header>网页顶部</header>
<nav>导航栏</nav>
<main>
<article>
<h1>文章标题</h1>
<p>文章内容</p>
</article>
</main>
<footer>网页底部</footer>常见语义化标签:
| 标签 | 作用 |
|---|---|
<header> | 页面或区域顶部 |
<nav> | 导航区域 |
<main> | 页面主要内容 |
<article> | 独立文章 |
<section> | 内容区域 |
<aside> | 侧边内容 |
<footer> | 页面或区域底部 |
相比全部使用 <div>,语义化标签更容易理解页面结构。
18. HTML 注释
HTML 注释格式:
html
<!-- 这是一个注释 -->例如:
html
<!-- 网站标题 -->
<h1>MoonlitLog</h1>注释不会直接显示在网页中。
19. HTML 特殊字符
某些字符在 HTML 中具有特殊含义,因此需要使用字符实体。
例如:
html
<表示:
text
<html
>表示:
text
>html
&表示:
text
&html
表示一个不换行空格。
例如:
html
<p>5 < 10</p>显示:
text
5 < 1020. 块级元素与行内元素
HTML 元素在页面中的显示方式通常可以简单分为两类。
块级元素
通常会独占一行。
例如:
html
<div></div>
<p></p>
<h1></h1>
<ul></ul>行内元素
通常不会独占一行。
例如:
html
<span></span>
<a></a>
<strong></strong>
<em></em>例如:
html
<p>
学习
<strong>HTML</strong>
是前端开发的基础。
</p>21. HTML、CSS、JavaScript 的关系
前端开发中最基础的三个部分是:
text
HTML
CSS
JavaScript可以简单理解为:
text
HTML → 网页结构
CSS → 网页样式
JavaScript → 网页行为例如一个按钮:
HTML:
html
<button>点击我</button>负责创建按钮。
CSS:
css
button {
background: black;
color: white;
}负责按钮的外观。
JavaScript:
javascript
document.querySelector("button").addEventListener("click", () => {
alert("Hello");
});负责点击按钮之后发生什么事情。
22. 一个完整的小例子
html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>MoonlitLog</title>
</head>
<body>
<header>
<h1>MoonlitLog</h1>
<p>记录我的学习过程</p>
</header>
<main>
<section>
<h2>正在学习</h2>
<ul>
<li>HTML</li>
<li>CSS</li>
<li>JavaScript</li>
</ul>
</section>
<section>
<h2>我的网站</h2>
<a href="https://example.com">
点击访问
</a>
</section>
</main>
<footer>
<p>MoonlitLog</p>
</footer>
</body>
</html>这个页面已经包含了 HTML 中最基础的:
text
文档结构
标题
段落
列表
链接
语义化标签23. 基础语法速查
| 功能 | HTML |
|---|---|
| 标题 | <h1>标题</h1> |
| 段落 | <p>文字</p> |
| 换行 | <br /> |
| 水平线 | <hr /> |
| 链接 | <a href="">链接</a> |
| 图片 | <img src="" alt="" /> |
| 粗体 | <strong>文字</strong> |
| 强调 | <em>文字</em> |
| 无序列表 | <ul><li></li></ul> |
| 有序列表 | <ol><li></li></ol> |
| 容器 | <div></div> |
| 行内容器 | <span></span> |
| 表格 | <table></table> |
| 表单 | <form></form> |
| 输入框 | <input /> |
| 按钮 | <button></button> |
| 注释 | <!-- 注释 --> |
总结
HTML 的核心其实并不复杂。
最重要的是理解三个概念:
text
标签
属性
嵌套关系例如:
html
<a href="https://example.com">
Example
</a>其中:
text
a → 标签
href → 属性
https://example.com → 属性值
Example → 标签内容学习 HTML 初期没有必要死记所有标签。
掌握最常用的:
text
h1~h6
p
a
img
div
span
ul / ol / li
table / tr / th / td
form / input / button之后在实际编写网页的过程中逐渐熟悉即可。