CSS 组合类和样式

标签 css

我有一个表行,它应用了一个类。根据该行中设置的值,我可以直接在该行中使用样式更改背景颜色。

$bground = ($a === 'a') ? '#A0A0A0' : '#ffffff';

<tr class='$class' align='center' style='background-color:$bground '>

添加样式会阻止应用于页面的其他 css 工作。例如:以下停止工作。

.res table tr:hover {
    background-color: #808080;
}

.res table tr.selected {
    background-color: #808080;
}

如果我从行中删除 style='background-color:$bground '>,然后按预期悬停并选择。

有什么办法吗?

谢谢

最佳答案

首先 background-color 可以像这样缩短为背景:.className {background: #fff}

接下来,您可以像这样组合重复的样式:

.classOne, .classTwo, #idOne {background: #fff;}

接下来,不要分配任何内联 js 或 css。这是导致代码更难维护的不好的做法。只需在其上添加一个新的 id/class。

最后,分配内联css停止样式表的原因是因为内联css具有更高的特异性值。在您的样式表中,您可以使用元素来增加权重:

div.classOne.someOtherClassItHas {background: #fff;}

如果这还不够,您可以随时添加 !important 规则来帮助停止覆盖:

.class {background: #fff !important;}

尽管作为最后的手段谨慎使用它(我建议将任何 !important 规则移动到样式表的底部),因为它可能会扰乱样式表的行为。

关于CSS 组合类和样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44306680/

相关文章:

jquery:改变滚动的CSS

css - 在 ActionScript 3.5/Flex 中,如何将边框应用于用户单击的任何 UI 组件或容器?

css - 如何将 CSS 文件与我的页面在 folder.Html/css 中链接?

html - 静态标题栏在我的内容后面

html页脚将其添加到行尾

Javascript 在将 'px' 分配给变量时删除位置值

javascript - 基于绝对 div 内滚动位置的动画元素,溢出 : scroll

html - 如何在多行显示不同高度的图像相互粘连

javascript - 无法使用变量将样式附加到 div

javascript - 使用单个图像在图像上添加图像叠加层