2014-01-23 231 views
6
<div class="parent"> 
     <div class="child"> 
    </div></div> 

在CSS中,“子”类有其自己的bg颜色,我无法更改。我想将“父”类bg颜色应用于容器。那么,有没有任何CSS技巧可以通过“parent”bg颜色覆盖“child”bg颜色。想要通过父元素覆盖子元素css属性

任何帮助将不胜感激。

感谢

+0

子类在父类之上。我的想法是,删除孩子班级的背景,除非你不能。你可以改变什么? – Cam

回答

0
.parent .child { 
    background-color: inherit !important; // can also use "transparent" 
} 

使用!important只有当没有其他作品。

+0

那不是他们想要的,尽管它会起作用。此外,.parent> .child – Cam

+0

@Cam对不起,很急。固定。 – rvighne

+0

问题是,他们希望父背景覆盖子背景。 – Cam

6

!重要将覆盖应用于任何内嵌的背景颜色,让我知道,如果这个工程

.parent > .child { 
    background-color: transparent !important; 
} 
+0

他们不是在谈论内联背景颜色,他们说:“'孩子'**班**拥有自己的bg颜色” – rvighne

+0

'background-color:transparent'是有道理的。 – noobcode

-1

您可以覆盖使用jQuery的CSS,虽然这是不雅。所以,如果你有HTML

<div class="parent"> 
     <div class="child"> 
</div></div> 

和CSS:

.parent { 
    width: 100px; 
    height: 100px; 
    background: red; 
} 
.child { 
    width: 50px; 
    height: 50px; 
    background: blue; 
} 

这jQuery将寻父的背景颜色,并将其应用到子:

$('.child').on('click', function(event) { 
    var bg = $(this).parent().css("background-color"); // finds background color of parent 
    $(this).css("background-color", bg); // applies background color to child 
}); 

这里有一个的jsfiddle:link

+1

哇!downvote蝙蝠......这个问题很残酷! – Marcatectura

+0

好吧,在我看来,用户正在寻求一种方法来改变孩子的背景颜色,这取决于父母的颜色,而无法控制CSS。 JS可以做到这一点,但正如我在第一句中提到的那样,它肯定不是理想的 – Marcatectura

+0

如果没有别的,你可以使用'inherit' CSS值,或'transparent'。 – rvighne