HTML无固定“大全”,常用标签约60–70个,高频使用不足30个;应聚焦语义易混淆、行为特殊或新增易误用的标签,如time需datetime属性、address仅限作者信息、aside非侧边栏、header/footer可重复使用,查MDN文档关注Permitted content、Tag omission和Accessibility concerns。

HTML 没有官方“大全”或“一览表”这种固定版本,所有标签随 HTML 标准演进而增减——<dialog> 在 HTML5.2 才稳定,<meter> 和 <progress> 语义接近但行为不同,<main> 要求页面中仅出现一次,而 <section> 可嵌套多次。硬背列表不如掌握分类逻辑和使用边界。
哪些标签现在真正在用、且容易误用
浏览器实际支持的常用标签约 60–70 个,但日常开发高频使用的不到 30 个。真正该关注的是那些语义易混淆、渲染行为特殊、或近年新增却被当普通标签乱用的:
-
<time>必须带datetime属性才有机器可读性,光写<time>2024年</time>对 SEO 和屏幕阅读器无效 -
<address>不是放任意联系信息的容器,只适用于最近的<article>或<body>的作者/归属信息 -
<aside>不等于“侧边栏”,而是与主内容关联度弱的补充内容(如引用、术语解释),放在<nav>外面套<aside>是常见错误 -
<header>和<footer>可在任何区块内重复使用,不限于页面顶部/底部
怎么快速查一个标签是否该用、怎么用对
别翻“大全”,直接看 MDN Web Docs 的单页文档——它会明确标出“已废弃”“实验性”“需配合 ARIA”等状态,并给出可运行示例。重点关注三处:
将调研报告、方案对比、数据分析、需求梳理、会议纪要、设计说明、代码评审、学习笔记等任务产物输出为可在浏览器直接打开的单文件 HTML,替代 Markdown 作为最终交付物。Markdown 在信息密度、视觉清晰度和可分享性上已跟不上 AI 产物的丰富度,HTML 能同时承载排版、表格、SVG 等。
- “Permitted content”:该标签允许包含什么?比如
<p>不能嵌<div>,否则触发隐式闭合 - “Tag omission”:是否允许省略结束标签?
<li>和<dt>可以,但省略后换行缩进易引发解析歧义 - “Accessibility concerns”:比如
<img>缺alt会被屏幕阅读器跳过,<button>缺type默认为submit,点一下可能意外提交表单
哪些标签看似简单,但兼容性和性能影响很大
几个常被低估的“轻量级”标签,实际在旧浏览器或移动端有明显表现差异:
立即学习“前端免费学习笔记(深入)”;
-
<picture>+<source>:Chrome 38+ 支持,但 iOS Safari 9–12 对media查询响应不及时,建议 fallback 到<img srcset> -
<details>/<summary>:Firefox 默认带箭头,Chrome 需用::marker重置,且无法用 CSS 动画控制展开高度(得靠 JS) -
<template>:内容不渲染、不执行脚本,但 DOM 中仍占内存;大量动态插入时,比字符串拼接innerHTML更安全,但首次解析开销略高 -
<canvas>:不是“高级图片标签”,没有内置缩放抗锯齿,devicePixelRatio不匹配会导致模糊,必须手动设置width/height属性而非仅 CSS
标签本身没有“基础”或“高级”之分,只有用在合适上下文里才算有效。最常出问题的不是冷门标签,而是 <div> 套 <div> 代替语义化结构,或是把 <span> 当万能内联容器滥用——这些不会报错,但会让可访问性、维护性和 CSS 维护成本逐级恶化。


















