Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html CSS下拉菜单子项重叠_Html_Css - Fatal编程技术网

Html CSS下拉菜单子项重叠

Html CSS下拉菜单子项重叠,html,css,Html,Css,你好,这是我第一个关于堆栈溢出的问题,所以我希望我能尽可能正确地回答它 我对我的问题做了广泛的研究,主要是阅读了Stack Overflow和其他一些网站上的所有问题,但我找不到一个有效的答案 一些背景:我正试图为我的工作写一个招聘网站,这是我写过的第一个网站。我正在使用wamp服务器在本地主机上运行站点进行测试。我的问题在标题中被描述得尽可能好。下面是我的html代码: <html> <head> <title> BCB Call Plus SRL Home

你好,这是我第一个关于堆栈溢出的问题,所以我希望我能尽可能正确地回答它

我对我的问题做了广泛的研究,主要是阅读了Stack Overflow和其他一些网站上的所有问题,但我找不到一个有效的答案

一些背景:我正试图为我的工作写一个招聘网站,这是我写过的第一个网站。我正在使用wamp服务器在本地主机上运行站点进行测试。我的问题在标题中被描述得尽可能好。下面是我的html代码:

<html>
<head>
<title> BCB Call Plus SRL Home </title>
<link rel="stylesheet" href="Main Style.css">
</head>
<body>
<div id = "main_content">
<ul id = "nav_container">
<li> <img id = "logo" src= Logo.png style ="width:150px;height:75px"> </li>
<li> <a href= "Main.html"> Home </a> </li>
<li> <a href= "Page1.html"> Menu 1 </a> </li>
<li> <a href= "Page2.html"> Menu 2 </a> </li>
<li> <a href= "Page3.html"> Menu 3 </a> </li>
<li id ="angajari"> <a class="dropdown_toggle" data-toggle="dropdown" href= "Page4.html"> Angajari </a>
    <ul class="sub_menu">
        <li><a href="Page41.html">Ce Vrem</a></li>
        <li><a href="Page42.html">Aplica</a></li>                        
    </ul>
    </li>
</ul>
</div>
<h1>This is a Heading</h1>
<p>This is a paragraph.</p>
</body>
</html>
下面是当我将鼠标悬停在有问题的菜单项上时发生的情况:

最后提示:我现在只在Chrome下运行这个。我注意到它在IE 8中没有正确阅读我的css(是的,我使用IE 8,因为我的一位老板希望我们这样做)。跨平台兼容性修复是受欢迎的,但不在我当前问题的范围内。我的WAMPSERVER有Apache2.4.9和PHP5.5.12

我甚至在某个在线代码测试网站上尝试了我的代码,但我忘记了它的名字,得到了相同的结果。如果您发现我的代码实际上显示正确,那么可能是我的配置有问题


这是一本书

我对您的css代码做了一些调整:

正文{
文本对齐:居中;
}
a{
字体大小:150%;
文字装饰:无;
颜色:#000000;
字体大小:粗体;
垂直对齐:中间对齐;
padding:0px 10px;/*这只是为了让悬停效果在html中丢失空格*/
}
a:悬停{
背景色:#338533;
}
保险商实验室{
填充:0;
保证金:0;
}
ul#导航集装箱{
背景色:#F2FFF2;
列表样式类型:无;
文本对齐:居中;
}
ul#nav#U集装箱李{
显示:内联块;
左侧填充:5px;
右侧填充:5px;
位置:相对位置;
}
#angajari ul.sub_菜单{/*使用菜单执行此操作,而不仅仅是链接*/
显示:无;
位置:绝对;/*设置正确的位置*/
}
#angajari ul.sub_菜单li{
显示:内联块;
}
#angajari ul.sub_菜单li a{/*我们不想要top:0,因为它不应该重叠*/
空白:nowrap;
}
#angajari:悬停ul.sub_菜单{/*参见上文->菜单非链接*/
显示:块;
}

这是一个标题
这是一个段落。

你需要你的.sub_菜单是绝对的,而不是你的
li a
s。就这样

.sub_menu {
    position:absolute;          
}
在此进行工作演示:

我会将
.sub_菜单
隐藏起来,而不是它的子菜单。个人偏好,但我认为这更有意义

为什么会发生这种情况? 考虑这个简单的例子:(考虑<代码>。相对< /代码> AS <代码>位置:相对< /代码>和<代码>绝对值<代码> AS <代码>位置:绝对< /代码>

绝对包装器是绝对的,所以它会搜索最近的
.relative
元素,并在它下面找到它。现在,这两个链接都是包装在div中的普通元素,因此它们按预期呈现


这两个示例的演示:

所以我试图解决您的问题,最后得到了这个结果

我已经调整了徽标的边距,如下所示:

<li> <img id = "logo" src= Logo.png style ="width:150px;height:75px;margin-left: -50px;"> </li>
body {
text-align:center;
}
a {
    font-size: 150%;
    text-decoration: none;
    color:#000000;
    font-weight: bold;
    vertical-align:middle;
}
a:hover{
    background-color:#338533;
}
ul {
    padding:0;
    margin:0;
}
ul#nav_container{
    background-color:#F2FFF2;
    list-style-type:none;
    text-align:center;
}
ul#nav_container li{
    display:inline-block;
    padding-left:5px;
    padding-right:5px;
    vertical-align:middle;
    position:relative;
    width: 95px;
}

#main_content ul ul {
    position: absolute;
    visibility: hidden;
}

#main_content ul li:hover ul {
    visibility: visible;
}

所以我做了一些小改动,但我不知道这是否是你想要的。
在这里输入code

如果你在
#angajari ul.sub_菜单中失去了
位置:绝对
,它会工作吗?@Wavemaster如果我这样做,它会把它们放下来,但它会把它们放在一行,而不是放在两行。当然,这是一个开始,但这不是我想要的;i、 两个子菜单显示一个在另一个下面。这个答案很有效,非常感谢。你能提供一些关于为什么这一改变有效的见解吗?@CSTroll通过一个示例演示给出了解释。你现在明白了吗?是的,就像我以前读过的一样,但没有正确理解。最好解释一下你改变了什么,而不仅仅是邮政编码。是的,很抱歉,错过了。
<div class="relative">
    Text
    <div class="absolute-wrapper">
        <div>Link 1</div><!-- these are now static by default -->
        <div>Link 2</div>
    </div>
</div>
<li> <img id = "logo" src= Logo.png style ="width:150px;height:75px;margin-left: -50px;"> </li>
body {
text-align:center;
}
a {
    font-size: 150%;
    text-decoration: none;
    color:#000000;
    font-weight: bold;
    vertical-align:middle;
}
a:hover{
    background-color:#338533;
}
ul {
    padding:0;
    margin:0;
}
ul#nav_container{
    background-color:#F2FFF2;
    list-style-type:none;
    text-align:center;
}
ul#nav_container li{
    display:inline-block;
    padding-left:5px;
    padding-right:5px;
    vertical-align:middle;
    position:relative;
    width: 95px;
}

#main_content ul ul {
    position: absolute;
    visibility: hidden;
}

#main_content ul li:hover ul {
    visibility: visible;
}