样式无序列表独立于父无序列表

时间:2013-04-16 17:46:57

标签: css wordpress navigation html-lists

我不确定我是否正确地提出了问题,但让我试着解释一下我想要实现的目标。

我正在尝试设置基于WordPress的网站的导航菜单。

我希望子菜单链接在网站的<body>标记(960px宽)的整个宽度上均匀排列。如果特定子菜单的链接不适合一行,我希望它们环绕并整齐排列。

最后,我想要子菜单,当它在悬停时下降,以推送网站的其他内容。

问题:子菜单无序列表会影响父无序列表中链接的位置,移动链接。不知何故,我唯一可以保持父菜单链接到位的方法是通过应用margin-right:-965px;

来拉出子菜单。

问题:我应该如何修改CSS以将两个子菜单一直放在左侧,与主容器的边缘齐平?

(如有必要,我可以分别为每个子菜单分配自定义类,例如:.submenu-about和.submenu-investors。)

提前感谢您的帮助!

这是导航菜单的完整CSS:

.main-navigation ul {
list-style-type:none;
margin-top:45px;
}

.main-navigation ul {
display: inline-block;
width:70%;
float:right;
}

.main-navigation ul li {
float:left;
}

.main-navigation ul li a {
display:block;
margin:3px 0 3px 40px;
}

.main-navigation ul ul {
background:#efefef;
display:none;
}

.main-navigation li {
    font-size: 13px;
}

.main-navigation li a {
outline: none;
text-decoration:none;
border-bottom: 0;
color: #6a6a6a;
text-transform: uppercase;
//white-space: nowrap;
}

.main-navigation li a:hover {
color: #000;
}

.main-navigation ul li:hover > ul {
margin:-1px -960px 3px 0;
display:block;
width:960px;
}

.main-navigation li ul li a {
font-size: 11px;
margin: 10px 0 10px 10px;
width:180px;
}

.main-navigation .menu-item > a,
.main-navigation .menu-ancestor > a,
.main-navigation .page_item > a,
.main-navigation .page_ancestor > a {
color: #9a9a9a;
font-weight:bold;
}

.main-navigation .current-menu-item > a,
.main-navigation .current-menu-ancestor > a,
.main-navigation .current_page_item > a,
.main-navigation .current_page_ancestor > a {
color: #636363;
font-weight:bold;
}

2 个答案:

答案 0 :(得分:0)

这应该这样做

将此添加到您的css

.main-navigation ul li .sub-menu {position:absolute; left:0px;}

答案 1 :(得分:0)

找到我自己的答案。

  1. ul li:hover ul

  2. 中删除背景
  3. 设置position:relativeul li:hover >ul li的灰色背景。

  4. 单独设置每个子菜单li项目的负左边距,将它们分别拉出不同数量的像素。