html - 悬停 visibility 不起作用

标签 html css

我试图在悬停在 .box1 上时显示 div.user-options。但是当我将鼠标悬停在 .box1 上时,.user-options 不可见。可能是什么原因?

html:

<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="user-settings.css" type="text/css">
</head>
<body>

<div class="box">

<div class="box1"></div>

<div class="user-options">
<ul class="settings">
    <li><a href="#">Profile</a></li>
    <li><a href="#">blah blah</a></li>
    <li><a href="#">Customization</a></li>
    <li><a href="#">Logout</a></li>
</ul>
</div>

</div>

</body>
</html>

CSS:

 .box1{
    width:50px;
    height:50px;
    background:orange;
}

.user-options{
    background:orange;
    visibility:hidden;
    width:200px;
}

.settings{
    list-style:none;
    padding:0px;
}

.box .box1:hover .user-options{
    visibility:visible;
}

.settings a{
    text-decoration:none;
}

最佳答案

.box .box1:hover .user-options
                ^
                ^

那是一个descendant combinator . user-options 元素不是 box1 元素的后代,因此选择器不匹配。

他们是 sibling ,使用 sibling combinators 之一(例如 + )。

关于html - 悬停 visibility 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29984142/

相关文章:

ajax - 持久聊天窗口?像 Facebook 或 OkCupid

javascript - 在 JavaScript 中,我可以以编程方式为文件输入元素触发 "click"事件吗?

html - 定位响应幻灯片

css - 将 css 类附加到我的光标

html - .net:应用程序在服务器上的 IE8 中丢失样式

html - 背景图片加载速度快 onload 无白底

jQuery 添加类和动画

javascript - Sharrre - Facebook 数据文本和数据 url 未显示在多个按钮上

javascript - 为什么 php 代码会覆盖 javascript?

javascript - jquery克隆输入文件在克隆div时没有添加文件