当悬停时突出显示一个div时,我试图淡化其他div。我知道使用 jquery 可以做到这一点,但我想知道仅使用 css3 是否有可能。
我确实尝试在下面的代码中使用 jquery,但是因为 div 从一开始就没有类 .highLight 并且只有在悬停时,所有的 div 最终都会因为使用 .panel:not(.highLight) 而从一开始就淡出{不透明度:0.5;}
希望这是有道理的。
jQuery
$('.panel').hover(function(){
$(this).toggleClass('highLight');
});
CSS
.highLight{
background-color: #333333;
}
.panel{
-webkit-transition:0.3s;
transition:0.3s;
opacity:1;
}
.panel:not(.highLight){
opacity:0.5;
}
下面的 HTML
<section id="areas">
<div class="container content">
<div class="projects">
<div class="panel">
</div>
</div>
<div class="blog">
<div class="panel">
</div>
</div>
<div class="contact">
<div class="panel">
</div>
</div>
</div>
</section>