HTML5 网站制作全教程:从零开始,打造你的第一个网站
本教程将分为以下几个核心部分:

- 准备工作:你需要什么工具?
- 第一步:认识 HTML5 —— 网站的骨架
- 第二步:认识 CSS3 —— 网站的“衣服”与妆容
- 第三步:认识一点 JavaScript —— 网站的“灵魂”与交互
- 第四步:响应式设计 —— 让网站适配所有设备
- 第五步:实战演练 —— 构建一个完整的个人作品集网站
- 第六步:进阶与学习资源
第一部分:准备工作
在开始编码之前,你需要准备两样东西:
- 一个现代网页浏览器:如 Google Chrome, Mozilla Firefox, Microsoft Edge 或 Safari,它们都有强大的开发者工具,方便我们调试。
- 一个代码编辑器:纯文本编辑器不行,你需要一个能提供语法高亮、代码提示等功能的编辑器。
- 强烈推荐:Visual Studio Code (VS Code),它免费、强大、插件生态丰富,是前端开发的首选。
- 其他选择:Sublime Text, Atom, Notepad++ (Windows 自带记事本不推荐)。
下载并安装 VS Code:https://code.visualstudio.com/
第二步:认识 HTML5 —— 网站的骨架
HTML (HyperText Markup Language) 是网页的结构层,它定义了网页内容的骨架,比如哪里是标题、哪里是段落、哪里是图片。
创建你的第一个 HTML 文件
- 在你的电脑上创建一个新的文件夹,命名为
my-first-website。 - 用 VS Code 打开这个文件夹。
- 在 VS Code 中,新建一个文件,命名为
index.html。.html是后缀名,必不可少。
HTML 基本结构
在 index.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>
</head>
<body>
<h1>欢迎来到我的网站!</h1>
<p>这是一个段落,用来介绍我的网站。</p>
<p>这里可以放很多内容。</p>
</body>
</html>
代码解析
<!DOCTYPE html>:告诉浏览器这是一个 HTML5 文件。<html lang="zh-CN">:整个网页的根元素,lang="zh-CN"表示网页的语言是中文(简体)。<head>:头部,包含网页的元数据,这些数据不会直接显示在页面上,但告诉浏览器关于网页的信息。<meta charset="UTF-8">:指定字符编码为 UTF-8,可以正确显示中文等特殊字符。<meta name="viewport" ...>:响应式设计的元标签,非常重要!后面会详细讲。<title>:,会显示在浏览器标签页上。
<body>:主体,包含所有在浏览器中可见的内容。<h1>:标题 1,最重要的标题,一个页面通常只有一个<h1>。<p>:段落。
常用 HTML5 标签
| 描述 | 示例 | |
|---|---|---|
<h1> - <h6> |
标题,<h1> 最重要 |
<h2>我的副标题</h2> |
<p> |
段落 | <p>这是一段文字。</p> |
<a> |
链接 | <a href="https://www.google.com">访问谷歌</a> |
<img> |
图片 | <img src="image.jpg" alt="图片描述"> |
<ul> / <li> |
无序列表(项目符号) | <ul><li>苹果</li><li>香蕉</li></ul> |
<ol> / <li> |
有序列表(数字编号) | <ol><li>第一步</li><li>第二步</li></ol> |
<div> |
通用容器,用于布局和分组 | <div>这里是一组内容</div> |
<span> |
内联容器,用于对文本的一部分进行样式化 | <p>你好,<span style="color:red;">红色</span>的世界!</p> |
如何预览?
保存 index.html 文件,然后用浏览器打开它(可以直接在文件上右键 -> 用 Chrome 打开),你就能看到你创建的网页了!
第三步:认识 CSS3 —— 网站的“衣服”与妆容
CSS (Cascading Style Sheets) 是网页的表现层,它负责美化 HTML 元素,比如设置颜色、字体、间距、布局等。
将 CSS 添加到 HTML
有三种方式,推荐使用外部样式表,因为它能让 HTML 和 CSS 分离,便于维护。
- 在
my-first-website文件夹中,新建一个文件,命名为style.css。 - 在
index.html的<head>部分添加以下代码,来链接你的 CSS 文件:
<link rel="stylesheet" href="style.css">
现在你的 index.html 的 <head> 部分看起来像这样:

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">我的第一个网页</title>
<link rel="stylesheet" href="style.css">
</head>
CSS 基本语法
CSS 规则由选择器和声明块组成。
/* 选择器 { 属性: 值; 属性: 值; } */
body {
font-family: Arial, sans-serif;
background-color: #f0f0f0;
color: #333;
}
h1 {
color: #0056b3;
text-align: center;
}
p {
line-height: 1.6;
}
在 style.css 中添加样式
打开 style.css 文件,输入上面的代码,然后刷新浏览器页面,你会发现网页的样式已经改变了!
body:设置了整个页面的默认字体、背景色和文字颜色。h1颜色改为蓝色,并居中显示。p:增加了段落行高,使阅读更舒适。
常用 CSS 属性
| 属性类别 | 常用属性 | 描述 |
|---|---|---|
| 文本 | color, font-size, font-family, text-align, line-height |
控制文字颜色、大小、字体、对齐方式和行高。 |
| 盒子模型 | width, height, margin, padding, border |
CSS 的核心概念,每个元素都是一个盒子。margin 是盒子外边距,padding 是内边距。 |
| 背景 | background-color, background-image |
设置元素的背景颜色或图片。 |
| 布局 | display, flexbox, grid |
控制元素的排列方式,Flexbox 和 Grid 是现代布局的利器。 |
第四步:认识一点 JavaScript —— 网站的“灵魂”与交互
JavaScript 是网页的行为层,它让网页“活”起来,实现交互功能,比如点击按钮、弹出提示框、动态更新内容等。
将 JavaScript 添加到 HTML
同样,推荐使用外部脚本。
- 在
my-first-website文件夹中,新建一个文件,命名为script.js。 - 在
index.html的</body>标签之前添加以下代码:
<script src="script.js"></script>
将代码放在 </body> 前,可以确保在脚本执行前,HTML 内容已经被加载完毕。
JavaScript 基础:一个简单的点击事件
让我们做一个简单的例子:点击一个按钮,弹出一个问候语。
- 修改你的
index.html的<body>部分,添加一个按钮:
<body>
<h1>欢迎来到我的网站!</h1>
<p>这是一个段落,用来介绍我的网站。</p>
<button id="myButton">点击我</button>
<script src="script.js"></script>
</body>
- 打开
script.js文件,输入以下代码:
// 获取按钮元素
const myButton = document.getElementById('myButton');
// 为按钮添加点击事件监听器
myButton.addEventListener('click', function() {
alert('你好,世界!');
});
代码解析
document.getElementById('myButton'):在 HTML 文档中找到id为myButton的元素。.addEventListener('click', function() { ... }):为这个元素添加一个“监听器”,当它被“点击”时,就执行后面的大括号 里的代码。alert('你好,世界!'):弹出一个浏览器自带的提示框。
现在保存并刷新你的网页,点击按钮,看看效果!
第五步:响应式设计 —— 让网站适配所有设备
响应式设计意味着你的网站可以自动适应不同尺寸的屏幕,无论是桌面电脑、平板还是手机。
核心工具:Viewport 和 Media Queries
- Viewport (视口):我们在
<head>中添加的<meta name="viewport"...>标签就是为了让移动浏览器正确渲染页面。 - Media Queries (媒体查询):CSS 的一个功能,允许你根据设备的特定特征(如屏幕宽度)来应用不同的样式。
使用 Media Queries
让我们修改 style.css,让它在屏幕宽度小于 600px 时(比如手机),改变布局。
/* 默认样式 (桌面) */
body {
font-family: Arial, sans-serif;
background-color: #f0f0f0;
color: #333;
padding: 20px;
}
h1 {
color: #0056b3;
text-align: center;
}
p {
line-height: 1.6;
}
/* 当屏幕宽度小于或等于 600px 时 */
@media (max-width: 600px) {
body {
padding: 10px; /* 减少内边距 */
}
h1 {
font-size: 24px; /* 减小标题字体 */
}
p {
font-size: 14px; /* 减小段落字体 */
}
}
调整你的浏览器窗口宽度,当它变得很窄时,你会看到网页的样式自动发生了变化,这就是响应式设计的魅力!
第六步:实战演练 —— 构建一个简单的个人作品集网站
让我们把所有知识结合起来,做一个简单的单页网站。
目标:一个包含头部、关于我、我的作品和页脚的网站。
HTML 结构 (index.html)
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">张三的个人作品集</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<header>
<h1>张三</h1>
<p>前端开发爱好者</p>
</header>
<main>
<section id="about">
<h2>关于我</h2>
<p>你好!我是一名正在学习前端开发的学生,我喜欢用代码创造美观且实用的网页。</p>
</section>
<section id="portfolio">
<h2>我的作品</h2>
<div class="project">
<h3>项目一:个人博客</h3>
<p>一个使用 HTML 和 CSS 构建的静态博客页面。</p>
</div>
<div class="project">
<h3>项目二:待办事项应用</h3>
<p>一个使用 HTML, CSS 和 JavaScript 构建的简单任务管理工具。</p>
</div>
</section>
</main>
<footer>
<p>© 2025 张三. 保留所有权利.</p>
</footer>
<script src="script.js"></script>
</body>
</html>
CSS 样式 (style.css)
/* 全局样式 */
body {
font-family: 'Helvetica Neue', Arial, sans-serif;
line-height: 1.6;
margin: 0;
padding: 0;
background-color: #fdfdfd;
color: #333;
}
.container {
width: 80%;
max-width: 1100px;
margin: auto;
overflow: hidden;
padding: 0 2rem;
}
/* 头部样式 */
header {
background: #333;
color: #fff;
text-align: center;
padding: 1rem 0;
border-bottom: #0779e4 3px solid;
}
样式 */
main {
padding: 2rem 0;
}
section {
margin-bottom: 2rem;
}
h2 {
color: #0779e4;
border-bottom: 1px solid #eee;
padding-bottom: 0.5rem;
}
.project {
background: #f9f9f9;
border: 1px solid #ddd;
padding: 1rem;
margin-bottom: 1rem;
border-radius: 5px;
}
/* 页脚样式 */
footer {
background: #333;
color: #fff;
text-align: center;
padding: 1rem 0;
margin-top: 2rem;
}
/* 响应式设计 */
@media (max-width: 600px) {
.container {
width: 95%;
padding: 0 1rem;
}
header h1 {
font-size: 24px;
}
}
JavaScript 交互 (script.js)
我们可以给“我的作品”部分添加一个简单的交互:点击项目标题可以展开/收起描述。
修改 index.html 中的项目部分,给标题加一个 class:
<!-- 在 index.html 的 project div 中 -->
<div class="project">
<h3 class="project-title">项目一:个人博客</h3>
<p class="project-description">一个使用 HTML 和 CSS 构建的静态博客页面。</p>
</div>
<div class="project">
<h3 class="project-title">项目二:待办事项应用</h3>
<p class="project-description">一个使用 HTML, CSS 和 JavaScript 构建的简单任务管理工具。</p>
</div>
在 script.js 中添加代码:
document.addEventListener('DOMContentLoaded', function() {
// 获取所有项目标题
const projectTitles = document.querySelectorAll('.project-title');
// 为每个标题添加点击事件
projectTitles.forEach(title => {
title.addEventListener('click', function() {
// 找到当前标题下的描述
const description = this.nextElementSibling;
// 切换 'hidden' 类
if (description.classList.contains('hidden')) {
description.classList.remove('hidden');
} else {
description.classList.add('hidden');
}
});
});
});
在 style.css 中添加 .hidden 类的样式:
/* 在 style.css 末尾添加 */
.project-description {
display: block; /* 默认显示 */
}
.hidden {
display: none; /* 隐藏 */
}
刷新你的网站,点击“项目一”或“项目二”的标题,看看描述文字是否消失了!
第七步:进阶与学习资源
恭喜!你已经掌握了制作一个基本网站的核心技能,你可以探索更广阔的世界:
- 布局:深入学习 Flexbox 和 CSS Grid,它们是现代网页布局的两大支柱。
- 框架:学习使用 CSS 框架(如 Bootstrap 或 Tailwind CSS)可以让你快速构建出美观、响应式的界面。
- JavaScript 进阶:学习 ES6+ 的新特性(如
let/const, 箭头函数, 解构赋值)、DOM 操作、异步编程(Promise,async/await)。 - 版本控制:学习使用 Git 和 GitHub,这是管理和协作开发代码的必备工具。
- 前端构建工具:了解 Webpack 或 Vite,它们可以帮助你更高效地管理项目、编译代码和优化资源。
推荐学习资源
- MDN Web Docs:https://developer.mozilla.org/zh-CN/
- 最权威、最全面的 Web 技术文档,遇到任何不懂的 HTML, CSS, JavaScript 概念,首先来这里查。
- freeCodeCamp:https://www.freecodecamp.org/chinese/
提供大量免费、互动式的编程课程,非常适合系统学习。
- W3Schools:https://www.w3schools.com/
另一个非常好的入门教程网站,例子简单易懂。
- YouTube 频道:
- Traversy Media:讲解清晰,项目实战多。
- The Net Ninja:系列教程非常棒,覆盖面广。
也是最重要的:多练习! 从模仿开始,然后尝试自己创造,遇到问题,学会使用搜索引擎(Google/Bing)和开发者工具来调试,祝你学习愉快!
