html - 如何阻止 colgroup 样式被 tr 样式覆盖?

标签 html css html-table colgroup

大家好,我有这样一张 table 吗?

<table>

<colgroup>
    <col class="selected">
    <col>
</colgroup>

    <tbody>
      <tr>
          <td>lorem</td>
          <td>lorem</td>
      </tr>
    </tbody>
</table>

我的风格是:

col.selected {
background-color: #f3f3f3; /*for selected column*/
}

table tbody tr:nth-of-type(2n+2){
background-color:#fafafa; /*zebra effect*/
}

一切都很好,但是 zerba 风格 owerites col 选择风格。有什么想法可以避免这种情况,以便所选列将使用 col 而不是第 n 个子项的样式?

最佳答案

问题是 zebra 背景的选择器具有更高的 specificitycol 选择器。给 col 选择器更高的特异性,或者给 tr 选择器更低的特异性(或两者)。如果它们相等,则 CSS 中的规则顺序很重要。

table colgroup col.selected {
    background-color: #f3f3f3; /*for selected column*/
} /* specificity: 13 */

table tr:nth-of-type(2n+2){
    background-color:#fafafa; /*zebra effect*/
} /* specificity: 12, will be overridden */

关于html - 如何阻止 colgroup 样式被 tr 样式覆盖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8194127/

相关文章:

javascript - 使用 jQuery 在文本区域中按 Enter 键

javascript - 视觉 : Set focus to dynamic input box

jquery - 根据单选按钮选择更改多个表单字段

css - 有没有办法在 Less 中为 ~ 运算符使用变量,比如 ~"calc(100% - @spacing)";

javascript - 带有 rowspan 和 colspan 的表中的颜色 TD

Javascript 定位 tr 元素

HTML5 - 限制文件上传

html - IE不显示图片

jquery - 表行奇数/偶数重置

html - CSS Grid如何选择行添加悬停效果?