LK 博客
HTML 基础篇:从网页骨架到常用标签全面入门
项目
约 1 分钟阅读 1 赞 0 条评论 鸿蒙黑体

HTML 基础篇:从网页骨架到常用标签全面入门

happyxx
happyxx @happyxx
累计点赞 1 登录后每个账号只能点一次
内容长度 0 正文词元数
正文
目录会跟随阅读位置移动。
阅读进度

HTML 基础篇:从网页骨架到常用标签全面入门

一、HTML 是什么?

HTML,全称 HyperText Markup Language,中文叫“超文本标记语言”。

它不是一门编程语言,而是一门标记语言。它的主要作用是描述网页的结构。

简单来说:

HTML 负责网页内容结构 CSS 负责网页样式美化 JavaScript 负责网页交互逻辑

比如一个网页中有标题、段落、图片、按钮、表单、列表、链接,这些最基础的内容结构,都是由 HTML 来定义的。

可以把网页理解成一栋房子:

HTML 是房子的骨架 CSS 是房子的装修 JavaScript 是房子的电路和智能设备

如果没有 HTML,浏览器就不知道页面上应该显示什么内容。

二、HTML 的基本结构

一个最基础的 HTML 页面通常长这样:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>我的第一个网页</title>
</head>
<body>
    <h1>你好,HTML!</h1>
    <p>这是我的第一个网页。</p>
</body>
</html>

我们逐行来看。

1. <!DOCTYPE html>

这行代码用来告诉浏览器:当前文档使用的是 HTML5 标准。

HTML5 是目前主流的 HTML 版本。写网页时,一般都建议在最顶部加上这一行。

<!DOCTYPE html>

2. <html>

html 标签是整个网页的根标签,所有网页内容都应该写在它里面。

<html lang="zh-CN">
</html>

其中 lang="zh-CN" 表示这个网页主要使用中文。

3. <head>

head 标签里放的是网页的配置信息,比如编码、标题、SEO 信息、CSS 引入等。

这些内容一般不会直接显示在网页主体中。

<head>
    <meta charset="UTF-8">
    <title>网页标题</title>
</head>

4. <meta charset="UTF-8">

这行代码表示网页使用 UTF-8 编码。

如果不写,有些中文页面可能会出现乱码。

<meta charset="UTF-8">

5. <title>

title 标签表示浏览器标签页上的标题。

<title>我的网页</title>

6. <body>

body 标签中放的是网页真正显示给用户看的内容。

比如标题、文字、图片、按钮、表单等,基本都写在 body 里面。

<body>
    <h1>这是网页主体内容</h1>
</body>

三、HTML 标签的基本语法

HTML 主要由标签组成。

大多数标签都有开始标签和结束标签:

<p>这是一段文字</p>

其中:

是开始标签

是结束标签 中间的内容是标签包裹的文本

也有一些标签是单标签,不需要结束标签,例如:

<br>
<hr>
<img src="logo.png" alt="logo">
<input type="text">

不过在现代 HTML 中,这些单标签不强制写成 <br />,直接写 <br> 即可。

四、HTML 常用文本标签

1. 标题标签

HTML 提供了 6 级标题:

<h1>一级标题</h1>
<h2>二级标题</h2>
<h3>三级标题</h3>
<h4>四级标题</h4>
<h5>五级标题</h5>
<h6>六级标题</h6>

h1 最大,h6 最小。

实际开发中,h1 通常用于页面主标题,一个页面最好只放一个主要的 h1,这样对 SEO 和页面结构更友好。

2. 段落标签

段落使用 p 标签:

<p>HTML 是网页的基础结构。</p>
<p>CSS 可以用来美化网页。</p>

浏览器会自动在段落之间添加一定的间距。

3. 换行标签

如果只想换行,不想新开一个段落,可以使用 br 标签:

<p>
    第一行内容<br>
    第二行内容
</p>

但是不要滥用 br 来控制布局。真正的布局应该交给 CSS。

4. 水平线标签

hr 标签可以生成一条水平分割线:

<hr>

常用于分隔内容区域。

5. 加粗和强调

常见的加粗标签有:

<strong>重要内容</strong>
<b>普通加粗</b>

strong 更强调语义,表示内容很重要。 b 只是视觉上加粗。

常见的斜体标签有:

<em>强调内容</em>
<i>普通斜体</i>

em 有语义强调。 i 更多只是视觉效果。

实际开发中,如果内容本身有重要含义,推荐使用 strongem

五、HTML 链接标签

链接使用 a 标签。

<a href="https://www.baidu.com">访问百度</a>

其中 href 属性表示链接地址。

1. 在当前页面打开

<a href="https://www.example.com">打开网站</a>

2. 在新窗口打开

<a href="https://www.example.com" target="_blank">新窗口打开</a>

如果使用 target="_blank",建议加上:

rel="noopener noreferrer"

完整写法:

<a href="https://www.example.com" target="_blank" rel="noopener noreferrer">
    新窗口打开
</a>

这样可以提高安全性。

3. 页面内跳转

可以用 id 实现锚点跳转:

<a href="#section1">跳转到第一章</a>

<h2 id="section1">第一章</h2>
<p>这里是第一章内容。</p>

点击链接后,页面会跳转到对应 id 的位置。

六、HTML 图片标签

图片使用 img 标签。

<img src="images/logo.png" alt="网站 Logo">

常用属性:

src:图片路径 alt:图片无法显示时的替代文本,也有利于 SEO 和无障碍访问 width:图片宽度 height:图片高度

例如:

<img src="cat.jpg" alt="一只猫" width="300">

注意:

图片标签是单标签,不需要写 </img>

实际开发中,alt 不要省略。尤其是博客、官网、电商网站中,alt 对搜索引擎和读屏软件都有帮助。

七、HTML 列表标签

HTML 中常见列表有三种:

有序列表 无序列表 定义列表

1. 无序列表

无序列表使用 ulli

<ul>
    <li>Java</li>
    <li>Python</li>
    <li>JavaScript</li>
</ul>

显示效果一般是带小圆点的列表。

常用于导航栏、菜单、文章目录等。

2. 有序列表

有序列表使用 olli

<ol>
    <li>打开浏览器</li>
    <li>输入网址</li>
    <li>访问页面</li>
</ol>

显示效果一般是带数字序号的列表。

适合表示步骤、排名、流程。

3. 定义列表

定义列表使用 dldtdd

<dl>
    <dt>HTML</dt>
    <dd>负责网页结构。</dd>

    <dt>CSS</dt>
    <dd>负责网页样式。</dd>

    <dt>JavaScript</dt>
    <dd>负责网页交互。</dd>
</dl>

dt 表示术语。 dd 表示解释说明。

八、HTML 表格标签

表格用于展示结构化数据。

<table border="1">
    <tr>
        <th>姓名</th>
        <th>年龄</th>
        <th>专业</th>
    </tr>
    <tr>
        <td>张三</td>
        <td>20</td>
        <td>计算机</td>
    </tr>
    <tr>
        <td>李四</td>
        <td>21</td>
        <td>软件工程</td>
    </tr>
</table>

常用标签:

table:表格 tr:表格行 th:表头单元格 td:普通单元格

更规范的表格结构:

<table>
    <thead>
        <tr>
            <th>课程</th>
            <th>分数</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>HTML</td>
            <td>95</td>
        </tr>
        <tr>
            <td>CSS</td>
            <td>90</td>
        </tr>
    </tbody>
</table>

thead 表示表头区域。 tbody 表示表格主体。

注意:现在不推荐用 HTML 表格来做页面布局。表格主要用于展示数据,网页布局应该使用 CSS,比如 Flex、Grid 等。

九、HTML 表单标签

表单是 HTML 中非常重要的一部分。登录、注册、搜索、评论、提交信息,基本都离不开表单。

表单使用 form 标签。

<form action="/login" method="post">
    <label>用户名:</label>
    <input type="text" name="username">

    <label>密码:</label>
    <input type="password" name="password">

    <button type="submit">登录</button>
</form>

1. form 标签

<form action="/submit" method="post">
</form>

常用属性:

action`:表单提交的地址
 `method`:提交方式,常见有 `get` 和 `post

get 通常用于查询,比如搜索。 post 通常用于提交数据,比如登录、注册、发布文章。

2. input 输入框

input 是最常用的表单控件。

<input type="text">
<input type="password">
<input type="email">
<input type="number">
<input type="date">
<input type="file">
<input type="checkbox">
<input type="radio">

常见类型:

text:普通文本输入 password:密码输入 email:邮箱输入 number:数字输入 date:日期选择 file:文件上传 checkbox:复选框 radio:单选框

3. label 标签

label 用于给表单控件添加说明。

推荐写法:

<label for="username">用户名:</label>
<input id="username" type="text" name="username">

for 的值要和输入框的 id 一致。这样点击文字“用户名”时,也能自动聚焦到输入框。

4. textarea 多行文本

<textarea name="comment" rows="5" cols="30"></textarea>

常用于评论、简介、备注等多行文本输入。

5. select 下拉框

<select name="major">
    <option value="computer">计算机科学</option>
    <option value="software">软件工程</option>
    <option value="ai">人工智能</option>
</select>

select 表示下拉框。 option 表示下拉选项。

6. button 按钮

<button type="submit">提交</button>
<button type="reset">重置</button>
<button type="button">普通按钮</button>

常见类型:

submit:提交表单 reset:重置表单 button:普通按钮,需要配合 JavaScript 使用

十、HTML 语义化标签

HTML5 中新增了很多语义化标签。语义化标签的作用是让页面结构更清晰,也方便搜索引擎和读屏软件理解页面内容。

常见语义化标签:

<header>页面头部</header>
<nav>导航区域</nav>
<main>页面主要内容</main>
<section>页面中的一个区域</section>
<article>一篇独立文章</article>
<aside>侧边栏</aside>
<footer>页面底部</footer>

一个简单的语义化页面结构:

<header>
    <h1>我的博客</h1>
</header>

<nav>
    <a href="/">首页</a>
    <a href="/articles">文章</a>
    <a href="/about">关于我</a>
</nav>

<main>
    <article>
        <h2>HTML 基础入门</h2>
        <p>这是一篇关于 HTML 的文章。</p>
    </article>
</main>

<aside>
    <p>这里是侧边栏内容。</p>
</aside>

<footer>
    <p>Copyright © 2026</p>
</footer>

语义化的好处:

代码结构更清楚 有利于 SEO 有利于无障碍访问 方便团队协作和后期维护

十一、块级元素和行内元素

HTML 元素大致可以分为块级元素和行内元素。

1. 块级元素

块级元素通常会独占一行。

常见块级元素:

<div>
<p>
<h1> 到 <h6>
<ul>
<ol>
<li>
<table>
<form>
<header>
<footer>
<section>
<article>

例如:

<div>第一块内容</div>
<div>第二块内容</div>

两个 div 会分别显示在不同的行。

2. 行内元素

行内元素不会独占一行,只占据自身内容需要的宽度。

常见行内元素:

<span>
<a>
<strong>
<em>
<img>
<input>
<label>

例如:

<p>我正在学习 <span>HTML</span> 和 <span>CSS</span>。</p>

span 常用于给一小段文字加样式。

3. div 和 span 的区别

div 是块级容器。 span 是行内容器。

例如:

<div class="card">
    <h2>文章标题</h2>
    <p>文章摘要内容。</p>
</div>

div 常用于包裹一整块内容。

<p>这是一段 <span class="red">红色文字</span>。</p>

span 常用于包裹一小段文本。

十二、HTML 属性

HTML 标签可以拥有属性,属性用于给标签提供额外信息。

基本格式:

<标签名 属性名="属性值">内容</标签名>

例如:

<a href="https://example.com" target="_blank">访问网站</a>

这里的 hreftarget 都是属性。

常见属性包括:

id:元素唯一标识 class:元素类名,常用于 CSS 选择器 style:行内样式 title:鼠标悬停提示 src:资源路径 href:链接地址 alt:图片替代文本 name:表单字段名 value:表单字段值

示例:

<p id="intro" class="text" title="提示文字">
    这是一段介绍文字。
</p>

id 和 class 的区别

id 一般用于唯一元素:

<div id="app"></div>

一个页面中,同一个 id 最好只出现一次。

class 可以重复使用:

<p class="text-red">第一段文字</p>
<p class="text-red">第二段文字</p>

多个元素可以使用同一个 class,方便统一设置样式。

十三、HTML 与 CSS 的关系

HTML 负责结构,CSS 负责样式。

HTML 示例:

<p class="title">这是标题</p>

CSS 示例:

.title {
    color: red;
    font-size: 24px;
}

CSS 的三种引入方式

1. 行内样式

<p style="color: red;">红色文字</p>

不推荐大量使用,因为会导致结构和样式混在一起。

2. 内部样式

<style>
    p {
        color: blue;
    }
</style>

适合小页面测试。

3. 外部样式

<link rel="stylesheet" href="style.css">

实际开发中最推荐这种方式。

完整示例:

<head>
    <meta charset="UTF-8">
    <title>CSS 引入</title>
    <link rel="stylesheet" href="style.css">
</head>

十四、HTML 与 JavaScript 的关系

JavaScript 可以操作 HTML,让页面产生交互。

例如:

<button onclick="alert('你好!')">点击我</button>

点击按钮后,会弹出提示框。

更推荐的写法是把 JavaScript 单独写出来:

<button id="btn">点击我</button>

<script>
    const btn = document.getElementById('btn');

    btn.addEventListener('click', function () {
        alert('你好,HTML!');
    });
</script>

实际项目中,HTML、CSS、JavaScript 最好分离:

<link rel="stylesheet" href="style.css">
<script src="main.js"></script>

这样代码更加清晰,也更容易维护。

十五、HTML 路径问题

写网页时,经常会遇到图片、CSS、JS 文件路径问题。

常见路径分为:

相对路径 绝对路径

1. 相对路径

相对当前 HTML 文件的位置查找资源。

<img src="images/logo.png">
<link rel="stylesheet" href="css/style.css">
<script src="js/main.js"></script>

假设目录结构如下:

project
├── index.html
├── images
│   └── logo.png
├── css
│   └── style.css
└── js
    └── main.js

那么在 index.html 中可以这样写:

<img src="images/logo.png">
<link rel="stylesheet" href="css/style.css">
<script src="js/main.js"></script>

2. 返回上一级目录

<img src="../images/logo.png">

../ 表示返回上一级目录。

3. 绝对路径

绝对路径一般从网站根目录开始:

<img src="/images/logo.png">

或者使用完整 URL:

<img src="https://example.com/logo.png">

十六、HTML 注释

HTML 注释不会显示在页面中,主要用于说明代码。

<!-- 这里是页面头部 -->
<header>
    <h1>我的网站</h1>
</header>

注意:

不要在注释里写敏感信息,比如密码、Token、数据库账号等。因为前端代码用户是可以查看的。

十七、HTML 实战:写一个简单个人主页

下面是一个完整的 HTML 示例:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>个人主页</title>
</head>
<body>

    <header>
        <h1>张三的个人主页</h1>
        <p>热爱编程,正在学习前端开发。</p>
    </header>

    <nav>
        <a href="#about">关于我</a>
        <a href="#skills">技能</a>
        <a href="#contact">联系我</a>
    </nav>

    <main>
        <section id="about">
            <h2>关于我</h2>
            <p>我是一名计算机专业学生,目前正在学习 HTML、CSS、JavaScript。</p>
        </section>

        <section id="skills">
            <h2>技能列表</h2>
            <ul>
                <li>HTML 基础</li>
                <li>CSS 页面美化</li>
                <li>JavaScript 交互开发</li>
                <li>Java 后端开发</li>
            </ul>
        </section>

        <section id="contact">
            <h2>联系我</h2>
            <form>
                <label for="name">姓名:</label>
                <input id="name" type="text" name="name">

                <br><br>

                <label for="email">邮箱:</label>
                <input id="email" type="email" name="email">

                <br><br>

                <label for="message">留言:</label>
                <textarea id="message" name="message"></textarea>

                <br><br>

                <button type="submit">提交</button>
            </form>
        </section>
    </main>

    <footer>
        <p>Copyright © 2026 张三</p>
    </footer>

</body>
</html>

这个例子包含了:

页面基本结构 标题和段落 导航链接 列表 表单 语义化标签

对于新手来说,能独立写出这样的页面,就说明 HTML 基础已经入门了。

十八、HTML 学习中常见错误

1. 标签没有闭合

错误写法:

<p>这是一段文字

推荐写法:

<p>这是一段文字</p>

虽然浏览器有一定容错能力,但不建议依赖浏览器自动修复。

2. 标签嵌套错误

错误写法:

<p>
    <div>内容</div>
</p>

p 标签里面不应该放 div 这种块级元素。

推荐写法:

<div>
    <p>内容</p>
</div>

3. 图片忘记写 alt

不推荐:

<img src="logo.png">

推荐:

<img src="logo.png" alt="网站 Logo">

4. 把表格用于布局

不推荐用 table 做页面布局。

以前很多老网站会用表格布局,但现在更推荐使用 CSS Flex 或 Grid。

5. 过度使用 div

很多新手写页面时喜欢全部用 div

<div>
    <div>标题</div>
    <div>内容</div>
</div>

更推荐使用语义化标签:

<article>
    <h2>标题</h2>
    <p>内容</p>
</article>

这样代码更清晰。

十九、HTML 编写规范建议

1. 标签名小写

推荐:

<p>内容</p>

不推荐:

<P>内容</P>

虽然 HTML 不区分大小写,但小写更规范。

2. 属性值加引号

推荐:

<input type="text">

不推荐:

<input type=text>

3. 合理缩进

推荐:

<ul>
    <li>HTML</li>
    <li>CSS</li>
</ul>

不要写成一大坨:

<ul><li>HTML</li><li>CSS</li></ul>

4. 结构和样式分离

不推荐大量使用:

<p style="color: red; font-size: 20px;">文字</p>

推荐:

<p class="text-red">文字</p>

然后在 CSS 中写:

.text-red {
    color: red;
    font-size: 20px;
}

5. 注意可读性

好的 HTML 代码应该让别人一眼能看出页面结构,而不是到处都是没有意义的标签。

二十、HTML 在实际项目中的作用

在真实项目中,HTML 不只是写几个标签这么简单,它通常会参与到整个前端页面结构设计中。

例如:

登录页面:

<form>
    <input type="text" placeholder="请输入用户名">
    <input type="password" placeholder="请输入密码">
    <button>登录</button>
</form>

后台管理系统:

<aside>侧边栏菜单</aside>
<main>主内容区域</main>

博客文章页:

<article>
    <h1>文章标题</h1>
    <p>文章内容</p>
</article>

电商商品页:

<section>
    <img src="product.jpg" alt="商品图片">
    <h2>商品名称</h2>
    <p>商品价格</p>
    <button>加入购物车</button>
</section>

无论是 Vue、React,还是普通网页,最终浏览器渲染出来的核心结构,本质上都离不开 HTML。

比如 Vue 组件中:

<template>
    <div class="user-card">
        <h2>{{ username }}</h2>
        <p>{{ description }}</p>
    </div>
</template>

React JSX 中:

function UserCard() {
    return (
        <div className="user-card">
            <h2>张三</h2>
            <p>前端开发学习者</p>
        </div>
    );
}

虽然写法变了,但本质还是在描述 HTML 结构。

所以,学好 HTML 是学习前端框架的基础。

二十一、HTML、CSS、JavaScript 的学习顺序

对于新手来说,推荐学习路线是:

第一步:HTML 掌握页面结构,知道常用标签怎么写。

第二步:CSS 学会美化页面,掌握盒子模型、布局、Flex、Grid、响应式。

第三步:JavaScript 学会页面交互,掌握变量、函数、事件、DOM、异步请求。

第四步:前端工程化 学习 npm、Vite、Vue 或 React。

第五步:真实项目 做登录注册、后台管理系统、博客系统、电商页面等。

不要一开始就直接上 Vue 或 React。 如果 HTML 和 CSS 基础不牢,写框架时会很痛苦。

二十二、总结

HTML 是前端开发的基础,它主要负责网页的结构。虽然它不像 Java、C++、JavaScript 那样有复杂的逻辑控制能力,但它是所有网页的起点。

学习 HTML 时,不要只停留在“这个标签能显示什么效果”,更应该理解每个标签的语义和使用场景。

需要重点掌握的内容有:

HTML 基本结构 常用文本标签 链接和图片 列表和表格 表单控件 语义化标签 块级元素和行内元素 常用属性 HTML 与 CSS、JavaScript 的配合 基本代码规范

对于初学者来说,HTML 入门并不难,难点在于写出结构清晰、语义合理、方便维护的页面。只要多写几个页面,多模仿优秀网站的结构,就能逐渐形成自己的前端页面组织能力。

HTML 就像网页的骨架。骨架搭得清楚,后面的 CSS 美化和 JavaScript 交互才会更加顺畅。

作者名片

happyxx
happyxx
@happyxx

这个作者暂时还没有填写个人简介。

评论区
文章作者和管理员都可以管理这里的评论。
0 条评论
登录后即可参与评论。 去登录
还没有评论,欢迎留下第一条交流内容。