<font> 标签的 size 属性已废弃,HTML5 中彻底移除;其值为相对编号(1–7),非像素单位,不遵循CSS层叠、不可继承、损害可访问性与SEO,现代开发应使用带单位的 font-size(如 16px、1rem、1.2em)替代。

<font> 标签的 size 属性早已被废弃,不能用于现代网页开发。W3C 自 HTML 4.01 起就将其标记为过时,HTML5 中彻底移除。浏览器虽可能仍渲染它(如 Chrome、Firefox 偶尔兼容),但行为不可靠,且会破坏语义结构、损害可访问性与 SEO。
<font size=> 为什么失效或表现异常
-
size值是相对编号(1–7),不是像素,也不对应任何标准字号:-
size="3"是“默认”,但实际大小取决于浏览器默认字体设置,非固定 16px -
size="4"并不等于font-size: 18px,不同浏览器换算逻辑不同
-
- 完全无视 CSS 层叠规则:无法被
font-size覆盖,也无法继承父级样式 - 屏幕阅读器通常忽略
<font>,文字缩放、高对比度模式下常丢失尺寸信息 - DevTools 中看不到该标签触发的计算样式,调试困难
替代方案:用 font-size 精确控制,且必须带单位
所有现代写法都依赖 CSS 的 font-size 属性,关键点是:
-
font-size: 16❌ 无效(缺单位) -
font-size: 16px✅ 显式像素值,稳定可控 -
font-size: 1rem✅ 基于根元素,适合响应式 -
font-size: 1.2em✅ 相对直接父元素,适合组件内比例
常见错误组合:
- 在
body设了font-size: 0,导致所有子元素 em/rem 计算结果为 0 - 外部 CSS 文件中写了
p { font-size: 14px !important; },覆盖了内联style="font-size: 18px;" - 修改了 CSS 却没硬刷新(Ctrl+Shift+R),浏览器加载的是缓存旧版本
什么时候还能看到 <font size=> 生效?
仅限以下极少数场景:
- 维护 20 年前的老系统(如 IE6 内网页面),且明确禁用现代 CSS
- 某些邮件模板客户端(如 Outlook Desktop)对 CSS 支持极差,被迫回退——但这属于妥协,不是推荐做法
- 使用老旧 CMS 富文本编辑器(如早期 Drupal 6 的 TinyMCE),输出残留
<font>,此时应配置编辑器过滤规则,而非接受它
真正需要快速改一处字号?直接用:
<p style="font-size: 18px;">这段文字要大一点</p>
比找 <font> 标签省三分钟,还不会在 Safari 移动端突然变小。
<font> 不是“还能用”,是“还没完全死透但不该碰”。真正卡住字号调整的,从来不是标签名,而是单位缺失、继承链断裂、优先级误判——盯住这三点,比翻旧文档有用得多。

















