2013-11-27 185 views
-1

這將更容易用一個例子來解釋:CSS - 如何將樣式應用於另一個div內的div?

我有一個在我的頁面上多次使用的div ID。

我想只改變這些div中的一個,不改變它的名字。

有沒有一種方法來設置這1個div,如果它在另一個div裏面?

例如,我的頁面包含許多這樣的:

<div id="text2">Some text</div> 

而且一個我想改變的是:

<div id="container"> 
    <div id="text2">Some different styled text</div> 
</div> 

這可能嗎?

PS。這是所有與Wordpress,因此他們動態生成。使用style添加單獨的內聯CSS將不起作用。這必須在我的外部CSS表格中完成。

+0

'id'應該是唯一的,而不是使用類。 –

+0

同意。只有一個元素應該與每個頁面的ID匹配。 –

+0

WordPress不會生成重複的ID,除非多個'wp_nav_menu'實例顯示相同的菜單。您應修改損壞的代碼以修復重複的ID。 –

回答

2

在你的情況,你可以把內部的div witin一個div作爲一個孩子,因此你可以使用這個CSS

#container #text2 { 
    /* Unique Div Style */ 
} 

這是正確的,如果你有一個被重複了很多元素你應該使用一個類而不是一個id。

如果你有很多的

<div id="text2">Some text</div> 

那麼它應該是這樣的

<div class="text2">Some text</div> 

如果你這樣做,那麼你的CSS看起來是這樣的一個DIV要風格不同

#container .text2 { 
    /* Unique Div Style */ 
} 

當然,只要您的容器ID是唯一的ID。

另外,如果你改變了你的代碼,你的風格與類重複元素,那麼你可以申請多個類相同的元素..

像這樣:

<div class="text2 text2new">Some text</div> 

現在你可以寫的CSS類。text2new

.text2new{ 
    /* make sure your css code overrides the old class*/ 
} 

如果在舊版瀏覽器中正確顯示網站很重要,那麼不支持多個類btw。

希望這可以讓它更清晰。

+0

啊啊,謝謝!不知道爲什麼我沒有想到這個哈哈......現在使用CSS已經5年了,而且我的想法太複雜了。 – Fizzix

1

嘗試:

#container #text2 { 
    /* YOUR CSS HERE */ 
} 
1

如上評論,如果你想在同一樣式應用於多個元素,使用類,而不是ID。樣式可以應用到指定的結構,這意味着在你的情況下列具體內容,你應該使用

#container .text2 { 
    // styles go here... 
} 

然而,如果你的文本2仍然是一個ID,風格將只適用於第一個元素與特定找到了id。

相關問題