应使用标准 css 的 color 属性设置文字颜色,font-color 无效;color 具有继承性,设在 table 上可影响内部文字;需用开发者工具检查 computed color 值及覆盖原因。

直接用 color,别写 font-color
HTML5 里根本没有 font-color 这个 CSS 属性,浏览器会直接忽略它。所有有效写法都基于标准 CSS 的 color 属性——它只管文字前景色,和背景、边框完全无关。
常见错误现象:font-color: red; 在开发者工具里显示为划掉;或者写了 table { color: blue; },但 <td> 里字还是黑的——大概率是单元格里用了内联 <code>style="color: black",或者浏览器默认样式(比如 Chrome 对 <th> 的 <code>color: -internal-light-dark(black, white))优先级更高。
整表统一改色:给 table 设 color 就够了
color 是可继承属性,设在 table 上,<th> 和 <code><td> 里的文字默认就会继承,不用重复写。
<ul>
<li>最简写法:<code>table { color: #333; }
<table class="data-table">,推荐用 <code>.data-table { color: #333; },避免影响其他表格
th 单独设颜色,此时你的 table { color: ... } 可能被覆盖,得加权重要么写 .data-table th
单独控制表头或某列:用 th 或 nth-child
想让表头变蓝、第二列变红,就得用更具体的选择器,靠继承搞不定。
- 改所有表头:
th { color: #1a5fb4; },但建议限定范围,比如table.data-table th - 改第二列文字:
td:nth-child(2), th:nth-child(2) { color: #d32f2f; }(注意同时选th,否则表头不生效) - 更稳妥的做法是加语义类:
<td class="status">Active</td>,再配.status { color: #28a745; }
为什么设了 color 却没反应?先看开发者工具
真正卡住的,往往不是“怎么写”,而是“为什么没生效”。打开浏览器开发者工具(F12),选中目标单元格,在 Computed 标签页里直接看最终生效的 color 值是多少——比反复改 CSS 高效得多。
- 如果值被划掉:说明有更高优先级的规则在起作用,检查选择器权重或是否用了
!important - 如果
color是白色但看不见:大概率背景也是白的,立刻查background-color和对比度 - 如果开了系统高对比度模式(Windows/macOS),
color可能被强制替换,这时起作用的是文本与背景的对比度是否 ≥ 4.5:1
事情说清了就结束。真正要盯住的,从来不是语法对不对,而是 computed color 到底是什么值、被谁覆盖、和背景搭不搭。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











