css菜单子项目没有显示在正确的位置

时间:2014-11-24 18:21:44

标签: html css

我使用下面的代码作为CSS菜单,但子项目没有显示在父项目

下面
    #CustomerMenu ul {
  text-align: left;
  display: inline;
  margin: 0;
  padding: 15px 4px 17px 0;
  list-style: none;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
}
#CustomerMenu ul li {
    display: inline-block;
}
#CustomerMenu ul li a {
  font: bold 12px/18px sans-serif;
  margin-right: -4px;
  position: relative;
  padding: 15px 20px;
  background: #fff;
  cursor: pointer;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -ms-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}
#CustomerMenu ul li a:hover {
  background: #555;
  color: #fff;
}
#CustomerMenu ul li ul {
  padding: 0;
  position: absolute;
  top: 48px;
  left: 0;
  width: 150px;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  display: none;
  opacity: 0;
  visibility: hidden;
  -webkit-transiton: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -ms-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  -transition: opacity 0.2s;
}
#CustomerMenu ul li ul li a { 
  background: #555; 
  display: block; 
  color: #fff;
  text-shadow: 0 -1px 0 #000;
}
#CustomerMenu ul li ul li a:hover {
    background: #666;
}
#CustomerMenu ul li:hover ul {
  display: block;
  opacity: 1;
  visibility: visible;
}

如何让子项直接显示在父项下面。

我在这里创建了一个JS小提琴,以显示我目前拥有的完整示例

http://jsfiddle.net/h4joet22/

4 个答案:

答案 0 :(得分:2)

演示 - http://jsfiddle.net/h4joet22/1/

设置position:relative

li
#CustomerMenu ul li {
    display: inline-block;
    position:Relative;
}

修改

设置li有效

演示 - http://jsfiddle.net/h4joet22/2/

答案 1 :(得分:0)

left:0;的CSS代码中删除#CustomerMenu ul li ul,并将子菜单与父菜单对齐。

答案 2 :(得分:0)

使用position:relative

#CustomerMenu ul li {
  display: inline-block;
  position:relative;
}

答案 3 :(得分:0)

我是这样做的:

在子菜单中添加一个类:

<ul  class="subalign">
        <li><a href="/my-integra/?id=myaccount">My Account</a></li>
        <li><a href="/my-integra/?id=myaccount">My Account</a></li>
    </ul>

你的CSS:

.subalign li {
    margin-left: 54%;
}