html - 即使没有悬停在父元素上,子元素也会出现

标签 html css hover

在父元素悬停时,子元素出现,但不悬停时,子元素仍然出现。

这是我的 CSS:

.profile-dropdown{
    border: 1px solid #ccc;
    border-radius: 3px;
    position: relative;
    margin-bottom: 15px;
    background-color: #fff;
    padding: 10px !important;
    cursor: pointer;
    color: #666;
}

.profile-dropdown > ul{
    position: absolute;
    top: 42px;
    left: 0;
    width: 100%;
    list-style: none;
    z-index: 99999;
    border: 1px solid #ccc;
    background-color: #fff;
    visibility: hidden;
    opacity: 0;
    transform: translateY(-10px);
    transition: all 0.4s ease;
}

.profile-dropdown:hover > ul
    visibility: visible;
    opacity: 1;
    transform: translateY(0px); 
}

这是我的 HTML:

<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 profile-dropdown">
    <p>
        <i class="fa fa-user"></i> Some Text <i class="fa fa-angle-down pull-right"></i>
    </p>
    <ul>
        <li><a href="#">Edit</a></li>
        <li><a href="#">View</a></li>
    </ul>
</div>

正如我所说,我试图在父元素悬停时显示子元素 (ul)。

当我将鼠标悬停在父元素上后,子元素消失了,当我尝试转到父元素时,即使我没有悬停在父元素上,子元素也会再次显示。

有人可以帮忙吗? 提前致谢

最佳答案

缺少{

.profile-dropdown:hover > ul {
    visibility: visible;
    opacity: 1;
    transform: translateY(0px); 
}

按照 OP 的要求工作:https://jsfiddle.net/f8g7z2wx/

等待更新问题...

关于html - 即使没有悬停在父元素上,子元素也会出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47855411/

相关文章:

css - Firefox 中基于旋转边框的三 Angular 形渲染

html - 位置相对div内的绝对?

html - CSS 文本的宽度过渡不起作用

javascript - 从 html 字典属性中获取所有值

javascript - 创建类似于 WPF WrapPanel 的水平布局(网页设计)

javascript - 在按钮中添加下划线幻灯片过渡

css - Hover.css 边框底部效果在 Opera 中无法正常工作

javascript - border-radius Angular 落里的事件

html - 如何使用 CSS 分隔 HTML 中的文本

javascript - jquery 中的复选框依赖关系