标签仅用于版权、数据来源、用户协议等法律/归属类副文本,表达“次要但必要”的语义,非视觉缩放工具;嵌套无效,字号不叠加;ui提示应优先用语义化css类控制。

<small></small> 标签只该用在法律/版权/免责声明这类有明确语义的副文本上,不是“把字变小”的快捷键。绝大多数 UI 中的小号提示(比如按钮旁的“仅限今日”、表单下的“密码需含大小写字母”)不该用它。
什么时候必须用 <small></small>?
只有当文字本身属于以下三类之一时才适用:
- 版权信息:© 2026 公司名称。保留所有权利。
- 数据来源说明:数据来源:国家统计局 2023 年公报
- 用户协议细则:用户名仅支持字母、数字和下划线
这些内容在语义上是“次要但相关”,<small></small> 表达的是这个身份,不是视觉效果。如果只是想让提示文字小一点,它就错了。
为什么嵌套 <small></small> 没用?
HTML 规范明确定义:<small></small> 嵌套无效。写成 <small></small>一级<small></small>二级,结果“一级”和“二级”字号完全一样,不会逐层缩小。
常见错误是误以为能靠嵌套实现多级缩放,实际只能靠 CSS 控制。比如需要两档小字号,得这样写:
<p class="caption">主提示</p> <p class="fine-print">补充说明</p>
然后用 CSS 分别定义:.caption { font-size: 0.875rem; }、.fine-print { font-size: 0.75rem; }。
怎么安全地排版真正的小号注释文字?
90% 的小号文字需求,应该用带语义类名的 CSS 方案,而不是 <small></small>:
- 类名要表达用途,比如
class="form-hint"、class="card-footer-text",而不是class="small-text" -
font-size优先用rem,不写px,确保尊重用户系统缩放设置 - 避免用已废弃的
<font size="1"></font>—— 它无语义、不可维护、HTML5 不支持 - 如果设计系统对尺寸敏感(比如要求所有“辅助文字”严格为 12px),必须显式重置 UA 默认值:
small, .form-hint { font-size: 0.75rem; }
真正容易被忽略的是:一旦你开始用 <small></small>,就得持续判断每处是否真的属于“免责声明/版权/细则”语义。多数时候,它只是个诱人的快捷键,但代价是语义失焦。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











