gpt4 book ai didi

html - 无法使 CSS/html 下拉菜单的第二级工作

转载 作者:太空宇宙 更新时间:2023-11-04 12:52:25 25 4
gpt4 key购买 nike

我正在尝试使用 CSS 向下拉菜单添加第二级。它是一个不可变的要求当鼠标悬停在菜单复杂的触发文本上时显示,第一级(选项 >>>,菜单 X)看起来不错,但无论我所做的,我无法阻止显示选项级别(选项 X 等)在顶层。我需要将这些选项显示在悬停在选项 >>> 上的一侧。我没有包含二级 CSS 代码,因为没有之一我尝试过的所有事情都接近于工作,所以我不确定是什么甚至包括。

<!DOCTYPE html>
<html lang="en">
<head>

<style type="text/css">

.menu {
width: 150px;
position: relative;
}

.menu * {
display:block;
padding:0; margin:0;
}

.menu ul {
display:none;
}

.menu:hover ul {
display:block;
position:absolute;
width:100%;
top:100%;
border:solid 1px black;
background: white;
}

.menu li a {
font-size: 14px;
font-family: arial, sans-serif;
font-weight: bold;
padding:15px 0px 15px 15px;
color: white;
background-color: black;
text-decoration: none;
}

.menu a:hover {
background-color: white;
color: black;
}


</style>

</head>

<body>
<div class='menu'>
<span class='triggerclass' style='width:150px'>Trigger</span>
<ul>
<li><a href="#">Home</a></li>
<li><a href='#'>Options &nbsp;&nbsp;&gt;&gt;&gt;</a>
<ul>
<li><a href="#">Option 1</a></li>
<li><a href="#">Option 2</a></li>
<li><a href="#">Option 3</a></li>
</ul>
</li>
<li><a href="#">Menu 1</a></li>
<li><a href="#">Menu 2</a></li>
<li><a href="#">Menu 3</a></li>
<li><a href="#">Menu 4</a></li>
</ul>
</div>
</body>
</html>

最佳答案

我相信您正在寻找的是弹出菜单。网络上有很多教程可以仅使用 CSS 来完成此操作。

这是我在 jsFiddle 中添加到您的代码中的 CSS我在您的问题下方的评论中链接到了。

CSS

.menu li {
position: relative;
}
.menu:hover li:hover ul {
display: block;
position: absolute;
left: 150px;
top: 0;
}

您发布的代码不起作用的原因有几个关键原因,这些是使 CSS 弹出菜单起作用的原因。

首先,包含子菜单的 li 应该设置 position: relative,因为该子菜单将使用 position: absolute。这允许您在使用绝对定位时根据 li 在文档中的位置定位子菜单。

完成后,根据父级 li 定位子菜单。使用 top: 0; left: 0; 子菜单会将其左上角置于父级 li 左上角的下方。虽然这会将子菜单的顶部与父 li 的顶部对齐,但它隐藏了子菜单。要解决此问题,您将子菜单向左移动父级 li 的宽度,left: 150px

其次,当使用 li:hover ul 悬停包含菜单的 li 时,您需要显示子菜单。

就是这样。

如果您不习惯使用 CSS position property,这可能会有些困惑。 .

希望这对您有所帮助!

**编辑**

OP 询问如何将子菜单显示包含在单个子菜单中,以便不显示子菜单(等等)的子菜单。很简单,使用Child Selector .

CSS

.menu:hover li:hover > ul

查看更新的 jsFiddle .

关于html - 无法使 CSS/html 下拉菜单的第二级工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26066596/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com