<font> 标签的 color 属性技术上已失效且不可靠,HTML5 中被完全移除;应改用内联 style、<style> 块或外部 CSS 文件设置字体颜色,并注意继承性与兼容性。

<font> 标签的 color 属性不能用,不是“不推荐”,是技术上已失效且不可靠。
现代浏览器虽可能渲染出颜色,但行为不一致、无规范保障,W3C 验证器直接报错,深色模式、屏幕阅读器、打印样式等场景下大概率崩坏。
为什么 <font color="red"> 看似能用,实际不该碰
-
<font>在 HTML5 中被完全移除,不是“废弃”,是“不存在”——浏览器只是做了向后兼容的容错处理 -
color值写成"red"(带引号)或#GGG(非法十六进制)时,<font>不会像 CSS 那样静默忽略,而是整段标签内容可能被跳过解析 - 没有继承机制:父级设了
<font color="blue">,子元素不会自动继承,必须重复写,导致嵌套时颜色失控 - 无法响应系统偏好:比如用户开了深色模式,
<font color="#000">依然硬塞黑字,和背景叠成一片
怎么用 CSS 正确设置字体颜色(3 种实操方式)
-
直接在元素上加
style属性(适合单点调试或 CMS 输出临时控制)
anything-to-html下载将调研报告、方案对比、数据分析、需求梳理、会议纪要、设计说明、代码评审、学习笔记等任务产物输出为可在浏览器直接打开的单文件 HTML,替代 Markdown 作为最终交付物。Markdown 在信息密度、视觉清晰度和可分享性上已跟不上 AI 产物的丰富度,HTML 能同时承载排版、表格、SVG 等。
<p style="color: #222">正文</p>
注意:color: "red"(引号)或color: #0000000(多一位)会失效,开发者工具里该行会被划掉 -
在
<head>里用<style>批量定义(适合小页面或原型)<style>body { color: #333; }.error { color: #d32f2f; }</style>优先级高于内联style的只有!important,慎用 -
外部 CSS 文件引入(适合正式项目)
<link rel="stylesheet" href="theme.css">
内容示例:h1 { color: #1a5fb4; } :root { --text-primary: #222; } p { color: var(--text-primary); }这样改主题色只需动一个变量,不用扫全站 HTML
容易被忽略的细节:color 不是孤立属性
- 它会继承:如果
<div style="color: blue">里套了个<span>,没显式设color,那span就是蓝色——这点常导致“我只改了一个地方,怎么全变了” - 它不作用于伪元素默认颜色:比如
::before { content: "★"; },这个 ★ 的颜色由父元素color决定,不是自动黑色 -
rgb(0,0,0)和#000渲染结果一样,但前者在旧版 IE8 及更早版本里不支持;hsl(0,0%,0%)同理,兼容性更差
真正要稳,就老实用 #222 或 rgb(34, 34, 34),别贪简写或新语法。

















