2017-02-26 28 views
0

我試圖改變一個跨度的風格,而盤旋在一個div上,這個懸停的div也應該改變它的顏色。如何在盤旋div時更改span樣式?

這是到目前爲止我的代碼(DIV的變化,BG,但跨度的顏色不對,爲什麼?):

<!DOCTYPE html> 
<html> 
<head> 
    <title>HOME</title> 
    <style type="text/css"> 
     div{ 
      width: 200px; 
      height: 200px; 
      background-color: red; 
     } 
     div:hover{ 
      background-color: blue; 
     } 
     span{ 
      color: blue; 
     } 
     div:hover span{ 
      color: green; 
     } 
    </style> 
</head> 
<body> 

<div></div> 
<span>WHY</span> 

</body> 
</html> 

任何幫助將非常感激。

回答

3

您需要將span標籤放入div。事情是這樣的:

div{ 
 
    width: 200px; 
 
    height: 200px; 
 
    background-color: red; 
 
} 
 
div:hover{ 
 
    background-color: blue; 
 
} 
 
span{ 
 
    color: blue; 
 
} 
 
div:hover span{ 
 
    color: green; 
 
}
<div> 
 
    <span>span text</span> 
 
</div>

+0

OP要求在將鼠標懸停在div上時更改跨度文本的顏色。 – frnt

+0

@frnt那麼,我的答案如何解決這個問題呢? –

+0

我並不是說你的答案沒有解決它所做的問題,但是你已經改變了標籤的形成,然後他們是兩個單獨的標籤,在你的解決方案中它是父母和孩子。 – frnt

0

您可以使用CSS選擇器+像下面:

div:hover + span { 
    color: green; 
} 

這裏是JSFiddle的鏈接。

0

如果你想使用jQuery。這可能會幫助你。

$('div').hover(function(){ 
    $("span").css("background-color","red"); 
}) 
+1

沒有涉及jQuery標籤。 – Roberrrt

相關問題