如何在CSS中全局覆盖`class-name> *:last-child`

时间:2020-02-08 14:28:54

标签: css css-selectors css-specificity

如果我想覆盖特定性不起作用的CSS类,请使用以下格式,效果很好。

div[class="class-name"] {
        padding-bottom: 0;
    }

但是如何覆盖bx--modal-content > *:last-child形式的类? 以下内容不起作用。

div[class="bx--modal-content > *:last-child"] {
        padding-bottom: 0;
    }

4 个答案:

答案 0 :(得分:1)

您的选择器无效

div[class="bx--modal-content > *:last-child"] {
        padding-bottom: 0;
}

您没有类属性为“ bx--modal-content> *:last-child”

您真正想要的是

div[class="bx--modal-content"] > *:last-child] {
        padding-bottom: 0;
}

这将选择div中包含的最后一个子元素,其类属性精确等于bx--modal-content。它会匹配类似<div class="bx--modal-content small">

的内容

答案 1 :(得分:0)

作为例外,您可以在第一个CSS中使用!important后缀,以便忽略特异性规则。将其放在结尾;

之前

答案 2 :(得分:0)

尝试这样

div[class="bx--modal-content > *:last-child"] {
        padding-bottom: 0 !important;
    }

:host /deep/ --> before the class if you want override plugins 

答案 3 :(得分:0)

选择器应为

div[class="bx--modal-content"] > *:last-child {
  padding-bottom: 0;
]

> *:last-child不是课程的一部分,因此不应放在[ ... ]括号内。