gpt4 book ai didi

html - 导航栏下拉项未正确定位 (html/css)

转载 作者:行者123 更新时间:2023-11-28 06:38:39 26 4
gpt4 key购买 nike

所以我用 HTML/CSS 制作了一个简单的下拉菜单。当我悬停/单击下拉项(本例中为“工作”)时,问题就可见了。悬停/单击时显示的元素在水平菜单上下降得不够低或在垂直菜单上下降得太远。我很想知道为什么会发生这种情况以及如何解决它。

注意:我正在使用 Eric Meyer 的 CSS reset v2.0,此处提供:http://meyerweb.com/eric/tools/css/reset/它对菜单的外观/性能有影响,但没有它,问题就很明显。

这是一个 jsfiddle: https://jsfiddle.net/qcdtj85w/

我正在使用 @media 在菜单的垂直和水平版本之间切换,这样你们都可以只更改显示窗口的大小来测试两者

谢谢!

代码如下:

HTML

<!DOCTYPE html>
<html>
<head>
<title>Home</title>
<meta name="viewport" content="initial-scale = 1.0,maximum-scale = 1.0" /><!-- Used to make @media work w iphone -->
<meta charset="UTF-8">
</head>
<body>

<ul id="menu">
<li><a href="#">About</a></li>
<li>
<a href="#">Work</a>
<ul class="noJS">
<li><a href="#">Drop</a></li>
</ul>
</li>
<li><a href="#">Contact</a></li>
</ul>

</body>
</html>

CSS

#menu,
#menu ul {
background-color: #000;
list-style: none;
top:20px;
}
#menu {
position:fixed;
float: left;
}
#menu > li {
position: relative;
float: left;
}
#menu li a {
color: #fff;
display: block;
height: 2em;
line-height: 2em;
padding: 0 1.5em;
text-decoration: none;
}
#menu ul {
position: absolute;
display: none;
z-index: 999;
}
#menu ul li a {
width: 50px;
}
#menu li:hover ul.noJS {
background-color: blue;
display: block;
}

@media all and (max-width: 860px) {

#menu{
position: fixed;
top: 20px;
right: 0px;
}
#menu > li {
float: none;
}

#menu > li {
float: none;
}

#menu ul {
position: relative;
display: none;
z-index: 999;
}

#menu li:active ul.noJS {
display: block;
}

}

最佳答案

遵守这条规则:

#menu li:hover ul.noJS {
background-color: blue;
display: block;
}

...添加 top: 32px;

总而言之:

#menu li:hover ul.noJS {
background-color: blue;
display: block;
top: 32px;
}

在移动版本中(媒体查询部分):

#menu li:hover ul.noJS {
top: 0px;
}

关于html - 导航栏下拉项未正确定位 (html/css),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34476881/

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