直接修改对应激活状态类(如.active、[aria-selected="true"])的color、background-color等样式即可,但需用开发者工具确认实际生效的选择器并提升特异性,注意缓存、CSS变量、JS重绘及媒体查询影响。
直接改 .active 或对应状态类的 color、background-color、border-bottom-color 即可,但必须确认你改的是真正生效的那条 CSS 规则——很多模板用 :is()、:where() 或高优先级选择器覆盖了你的样式。
不同 HTML5 模板用的激活标识不统一,先用浏览器开发者工具(F12)点选当前高亮 tab,看它身上带什么 class:
class="nav-link active" 或 class="tab-pane show active"
class="tab-btn active"、class="tab-item is-active"、aria-selected="true" 配合属性选择器class="tab-item" :class="{ active: currentTab === 'xxx' }",此时要查渲染后 DOM别只搜 “active”,也检查 [aria-selected="true"]、:target、input:checked + label 这类无 class 的激活逻辑。
即使写了 .active { background-color: #007bff !important; },也可能被模板里更具体的选择器压住,比如:
.nav-tabs .nav-link.active {
background-color: #f8f9fa;
}
这时你要写得至少一样具体:
.nav-tabs .nav-link.active {
background-color: #007bff !important;
}
或者用属性选择器绕过 class 冲突:
[aria-selected="true"] {
color: #0
07bff;
font-weight: bold;
}
要点:
!important,优先提升选择器特异性(比如加父容器 class)颜色没变,大概率不是 CSS 写错了,而是下面某个环节卡住了:
--primary-color),实际激活色由变量控制,应改 :root { --primary-color: #007bff; }
@media)在特定宽度下覆盖了你的颜色设置,记得在响应式断点里也补上最省事的验证方式:在 DevTools 里直接双击已生效的 background-color 值,手动改成红色,看是否立刻变色——如果变,说明路径和选择器都对,只是外部加载或缓存问题。