【发布时间】:2013-10-03 22:52:16
【问题描述】:
当一个 div 在悬停时突出显示时,我正在尝试淡化其他 div。 我知道使用 jquery 可以做到这一点,但我想知道仅使用 css3 是否有可能。
我确实尝试在下面的代码中使用 jquery,但因为 div 从一开始就没有 .highLight 类,只有在悬停时,所有的 div 最终都会因为使用 .panel:not(.highLight){opacity: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>
【问题讨论】:
-
没有 jsBin,没有 jsFiddle :(
-
你能不能不这样做:jsfiddle.net/Jf5AP
-
这里有一个link 来传达这个想法,此时所有它都被突出显示,我试图让 .panel 在悬停时突出显示,而其他的则消失。 @SombreErmine 您的示例仅显示悬停状态,其他 div 没有消失。