2015-04-01 142 views
0

li.options中的懸停選擇器是否會影響.image?我知道這可以在jQuery中完成,但我只是好奇是否可以用純CSS來做。選擇外部元素CSS

<nav class="menu"> 
    <ul class="list"> 
     <li class="option"><a href="#">OPTION 1</a></li> 
     <li class="option"><a href="#">OPTION 2</a></li> 
     <li class="option"><a href="#">OPTION 3</a></li> 
     <li class="option"><a href="#">OPTION 4</a></li> 
    </ul> 
</nav> 
<div id="image_set"> 
    <div class="image image1"></div> 
    <div class="image image2"></div> 
    <div class="image image3"></div> 
    <div class="image image4"></div> 
</div> 
+0

你想要什麼效果? – br3w5 2015-04-01 14:32:38

+1

您應該發佈您的CSS,但要回答您的問題否,沒有CSS父母選擇器。 – j08691 2015-04-01 14:33:01

+0

看到:http://stackoverflow.com/questions/6910049/on-a-css-hover-event-can-i-change-another-divs-styling 可以使用例如圖像,而不是DIV – shyamo 2015-04-01 14:38:32

回答

1

是的,你可以做到這一點的CSS,但你必須改變結構 或者只是使用jQuery或Javascript:

$(".list li").hover(function(){ 
 
    var index = $(this).index() + 1; 
 
    $(".image").removeClass("active"); 
 
    $("#image_set .image:nth-child(" + index + ")").addClass("active") 
 
})
.image{ 
 
    width: 50px; 
 
    height: 50px; 
 
    margin: 4px; 
 
    float: left; 
 
    border: 1px solid black; 
 
} 
 
.active{background: red;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<nav class="menu"> 
 
    <ul class="list"> 
 
     <li class="option"><a href="#">OPTION 1</a></li> 
 
     <li class="option"><a href="#">OPTION 2</a></li> 
 
     <li class="option"><a href="#">OPTION 3</a></li> 
 
     <li class="option"><a href="#">OPTION 4</a></li> 
 
    </ul> 
 
</nav> 
 
<div id="image_set"> 
 
    <div class="image image1"></div> 
 
    <div class="image image2"></div> 
 
    <div class="image image3"></div> 
 
    <div class="image image4"></div> 
 
</div>