为什么我不能覆盖现有的:after和:before伪元素?

时间:2015-09-15 23:29:43

标签: html css html5 css3

我有两个相同的CSS规则,但有一个不会覆盖另一个。

我使用正确而不是规则,但不会覆盖规则。其他手顶部规则将被覆盖。我还使用了!important 规则,但它没有进行任何更改。

有没有办法改变?

示例网址:http://i.stack.imgur.com/cdGSM.png

.navigation-bar-wrapper:after, .navigation-bar-wrapper:before {
   top: -10px;
   right: 58px;
}

.navigation-bar-wrapper:after, .navigation-bar-wrapper:before {
   top: -10px;
   left: 14px; 
}

1 个答案:

答案 0 :(得分:2)

重要提示:请勿使用!important

当您需要重置由另一个样式表设置的CSS规则时,请使用initial稍微更强的选择器。如果要添加的CSS的加载时间晚于您要覆盖的CSS,请使用相同的精确选择器。

div.navigation-bar-wrapper:after,
div.navigation-bar-wrapper:before {
    top: -10px;
    left: initial;
    right: 22px;
}