HTML5 是什么?它和旧版 HTML 有什么区别

HTML5 是 HTML 标准的第五次重大版本更新,也是当前网页标记的通用基础。它由 W3C 与 WHATWG 共同维护,核心目标是让网页在不依赖插件的情况下承载更丰富的结构、媒体和交互能力。如果你正在学前端、准备重写旧站点,或者只是想知道“HTML5 到底新在哪”,下面按能力、差异和上手路径说明。

HTML5 引入了哪些关键能力

HTML5 不是单一功能,而是一组围绕“文档结构 + 原生能力”的扩展。主要可以归为几类:

  • 语义化标签:<header>、<nav>、<main>、<article>、<section>、<aside>、<footer> 等,让页面结构本身携带含义,而不是全靠 <div> 堆叠。
  • 原生音视频:<audio>、<video> 让浏览器直接播放媒体,不再依赖 Flash 等第三方插件。
  • 图形绘制:<canvas> 提供脚本绘图接口,<svg> 支持矢量图形,两者常用于图表、动画和可视化。
  • 表单增强:新增 email、url、number、date、range 等输入类型,以及 required、pattern、placeholder 等属性,浏览器可做基础校验。
  • 本地存储与离线:localStorage、sessionStorage 用于在客户端保存数据,Application Cache(后被 Service Worker 取代)曾用于离线访问。
  • 其他 API 生态:地理位置、拖放、WebSocket、Web Workers 等,常与 HTML5 一起被提及。

HTML5 与 HTML4 / XHTML 的主要差异

差异不只在标签数量,更在文档写法和结构表达上。

维度 HTML4 / XHTML HTML5
文档类型声明 冗长,需引用 DTD 简化为 <!DOCTYPE html>
字符编码 写法较繁琐 简化为 <meta charset="utf-8">
结构表达 主要靠 <div> + class 语义化标签直接表达区块含义
媒体播放 依赖插件 <audio>、<video> 原生支持
表单校验 基本靠 JavaScript 原生输入类型与约束属性
大小写与闭合 XHTML 要求严格 HTML5 更宽松,但建议保持规范写法

一个直观例子:HTML4 时代常见写法是 <div id="header">、<div id="nav">;HTML5 直接写成 <header>、<nav>,结构含义对浏览器、搜索引擎和辅助技术都更清晰。

HTML5、CSS3 和 JavaScript 的分工

三者经常被一起讨论,但职责不同:

  • HTML5:负责结构与内容,定义页面上有什么。
  • CSS3:负责样式与布局,定义页面长什么样,例如圆角、渐变、媒体查询、Flexbox、Grid。
  • JavaScript:负责行为与交互,定义页面能做什么,例如响应点击、请求数据、操作 Canvas。

所以“用 HTML5 做响应式”这种说法并不准确——响应式布局主要由 CSS3 的媒体查询实现,HTML5 提供的是语义结构基础。

常见误解

  • HTML5 不是框架或模板:像 HTML5 UP 这类站点提供的是基于 HTML5/CSS3 的响应式站点模板,模板是成品,HTML5 是底层标准。
  • HTML5 不等于响应式设计:响应式是 CSS 层面的适配策略,HTML5 只是让结构更适合被适配。
  • HTML5 不是“新语言”:它仍是 HTML,只是版本演进,旧页面不会因为 HTML5 出现就失效。

上手建议

如果要从旧版迁移或开始新项目,可以按这个顺序推进:

  1. 把文档头换成 <!DOCTYPE html> 和 <meta charset="utf-8">。
  2. 用语义化标签替换主要 <div> 区块,先改 header、nav、main、footer。
  3. 表单改用合适的 type 和 required、pattern,减少一部分 JavaScript 校验。
  4. 需要媒体时优先用 <video>、<audio>,并准备多格式回退。
  5. 需要绘图或动画时再引入 <canvas> 或 <svg>,不必一开始就全用上。

验证方法很直接:改完后用浏览器开发者工具检查 DOM 结构是否符合预期,再用不同尺寸窗口确认 CSS 媒体查询是否生效。常见卡点是旧浏览器兼容性和媒体格式支持,遇到时优先查目标浏览器的支持情况,而不是一次性堆砌所有新特性。

createjs.com
A suite of modular libraries and tools which work together or independently to enable rich interactive content on open web technologies via HTML5.
eaglercraft.com
Eaglercraft 是一款免费开源的《我的世界》,可以在任何网页浏览器中玩,包括 Chromebook、iOS 和 Android。它使用 TeaVM 进行 AOT 编译,支持单人、多人、共享世界、语音聊天和 PBR 光影。
html5up.net
Responsive HTML5 and CSS3 site templates designed by @ajlkn.
slither.com
The most famous slither game in the world! Play with millions of players around the world and try to become the longest of the day!
slither.io
The most famous slither game in the world! Play with millions of players around the world and try to become the longest of the day!
uniapp.dcloud.net.cn
uni-app,uniCloud,serverless,快速体验,看视频,10分钟了解uni-app,为什么要选择uni-app?,功能框架图,一套代码,运行到多个平台