2013-07-15 212 views
0

我遇到了一個奇怪的CSS問題。CSS懸停選擇器不工作

這可能是因爲我不使用類,而是直接使用標籤的名稱,但我想知道問題是什麼,所以我不重複。

我的HTML是這樣的:

<div class='container'> 
    <div class='top'> 
     <a href='href.com'>hover here..</a> 
    </div> 
    <div class='bottom'> 
     <a>..and this should change</a> 
    </div> 
</div> 

什麼,我試圖用CSS:

.top a:hover .bottom a 
{ 
    color:#f00; /* does not work */ 
} 
.top a:hover .container 
{ 
    background-color:#f00; /* does not work */ 
} 
.top a:hover 
{ 
    color:#f00; /* works */ 
} 

那麼,爲什麼在其他元素調用不工作?

還是因爲我是從小孩打電話給父母的?

如果是這樣,我該如何使它工作?

謝謝!

+0

你瞭解CSS選擇器如何工作是有缺陷的。您不能選擇備份層次結構。 – jmoerdyk

+0

@jmoerdyk是的我的第一個例子是試圖選擇父母,我現在明白了。但第二個呢?即選擇兄弟姐妹?這是不可能的嗎? – jeff

回答

1

你的CSS是錯誤的,你忘了逗號:

.top a:hover, .bottom a:hover 
{ 
    color:#f00; 
} 
.top a:hover, .container:hover /* Comma was missing here */ 
{ 
    background-color:#f00; 
} 
+0

如果我添加逗號,.bottom a和.container將始終爲#f00,我錯了嗎? – jeff

+0

我沒有得到,你只需要懸停。我已經更新現在應該沒問題。請嘗試更好地解釋你想達到什麼 –

+0

我試圖改變.bottom,當.top a被徘徊時。 – jeff