如果在没有javascript 的兄弟姐妹之间切换悬停时,如何避免转换延迟?
我的目标是制作一个具有以下行为的大型菜单:
我目前的变化如下所示,具有以下行为(差异为粗体):
它也有定位故障,但我现在忽略了它们;这只是一个原型。
这可以通过javascript轻松完成,但我的目标是纯粹使用CSS3。
.power > div {
display:inline-block;height:25px;background-color:lightblue;
padding:0;margin:0
}
.hider {
position:absolute;top:-999px;
width:80%;
background-color:pink;
}
.power div:hover .hider {
top:25px;
left:0px;
transition: all 0s 1.5s;
}
.power:hover div .hider{
background-color:orange;
transition: all 0s 1.5s;
}
<div class="power">
<div class="one">Menu-One
<div class="hider"><br/></br/>One</div>
</div>
<div class="two">Menu-Two
<div class="hider"><br/></br/>Two</div>
</div>
</div>
答案 0 :(得分:2)
你可以通过例如使用opacity
这样做,你可以延迟不透明度(影响所有)和每个子菜单的单独重新定位(没有转换)
.power > div {
display: inline-block;
height: 25px;
background-color: lightblue;
padding: 0;
margin: 0
}
.hider {
position: absolute;
top: -999px;
opacity: 0;
width: 80%;
background-color: pink;
}
.power div:hover .hider {
left: 0px;
top: 25px;
}
.power:hover div .hider {
opacity: 1;
background-color: orange;
transition: opacity 0s 1.5s;
}
<div class="power">
<div class="one">Menu-One
<div class="hider">
<br/>
<br/>One
</div>
</div>
<div class="two">Menu-Two
<div class="hider">
<br/>
<br/>Two
</div>
</div>
</div>