【发布时间】:2016-03-16 16:52:27
【问题描述】:
#login-panel-ghost {
display: none;
transition-delay: 2s;
}
.top-menu-login:hover #login-panel-ghost {
display: block;
position: fixed;
width: 250px;
height: 180px;
transition-delay: 2s;
}
<span class="top-menu-login">Login
<div id="login-panel-ghost">
<h2>Log in!</h2>
<form>
<input type="text" placeholder="Username">
</form>
</div>
</span>
现在,让我解释一下我想要完成的任务:我有一个span .top-menu-login,它将显示为一个短语,在本例中为“登录”。此外,div #login-panel-ghost 原本是隐藏的,但是当鼠标经过“登录”时,div 应该会出现。
我设法做到了,问题是我想在鼠标悬停“登录”后延迟元素消失!
到目前为止,我已经尝试过这段代码,我在 Stack Overflow 上找到了该代码,但我认为悬停更改另一个 div 的事实造成了麻烦。
附:我知道使用 JavaScript 应该很容易,但我想尝试不使用它!
【问题讨论】:
-
首先,您不应该将
div包裹在span中:它不打算用作容器。然后,您应该在 jQuery 中使用类似out的事件来处理“登录框”的消失。