2011-07-20 38 views
2

是否有可能有一個div.class基於它內部的類不同? 所以,如果我有這樣的:是否有可能根據裏面的類改變邊界?

<div class="defaultblock"> 
    <div class="blockcontent"> 
     <div id="group-id-tids-11" class="advertisement"> 
     </div> 
    </div> 
</div> 

我要的是:「如果基礎div.class ==廣告THEN div.defaultblock {邊界:3px的;}

+2

不,你不能這樣做。您的問題等同於:http://stackoverflow.com/questions/1014861/is-there-a-css-parent-selector – thirtydot

+0

另請參見[複雜的CSS選擇器的父級的活動子](http://stackoverflow.com /問題/ 45004 /複雜的CSS選擇器換父母的活性孩子)。 – Phrogz

回答

2

如果使用jQuery是一個選項,你可以做這樣的事情:

$(".blockcontent .advertisement").parent().css({border: "3px"}); 

在本jsFiddle

1
.blockcontent .advertisment {border: 1px;} 
.othercontent .advertisment {border: 2px;} 

這應該給你一個想法如何嵌套屬性...據我所知,你不能用這個嵌套來描述外部屬性。但不是很確定...注意:這個例子改變了內部div的邊界。不是外面的。

+0

我認爲這會在廣告課上設置邊界,不是嗎?問題是爲父類設置邊界。 –

+0

這就是爲什麼我給它寫了「註釋」......)據我所知,你不能以某種方式描述外部元素。但如果可能的話,我也很高興知道。 ; ) – Marco

1

你不能做到這一點可見(選擇一個祖先根據孩子的內容,或選擇元素基於後面的兄弟姐妹)與CSS單獨。

正如其他人所說的,JavaScript是一種選擇。

0

這是hackish的,但使用自己的代碼:

<div class="defaultblock <?php echo $highlight; ?>"> 
    <div class="blockcontent"> 
     <div id="group-id-tids-11" class="<?php echo $highlight; ?>"> 
     </div> 
    </div> 
</div> 

然後在你的CSS,你只需要考慮你想要.defaultblock.highlight是什麼樣子。

+0

對不起,PHP上的大腦,並以某種方式假設你也使用它,當原始問題只有CSS/HTML ... – Drew

相關問題