html - 行为不同的订单项

标签 html css navigation html-lists

我正在构建一个在无序列表中包含无序列表的导航。我怀疑主要无序列表的样式与子列表的样式混淆了,反之亦然。也许我的选择器不是最好的。导航可以在这里看到:http://jsfiddle.net/W3Dzd/

我遇到的两个问题是 1) “sui generis”下的第一行元素比其他元素更细 - 作为该框的矩形显示不同。 2) 悬停时,子导航行元素“mantels” anchor 文本,也在“sui generis”下,悬停时不会改变颜色。

有人能给我指出正确的方向吗?是否有更好的选择器可供使用?

最佳答案

第一个问题来自规则:

.subnav li:first-child > a {
    padding-bottom: 2.5px;
}

我不明白它的用途,但删除它可以解决问题。


第二个问题来自这条规则:

.navigation li:first-child + li + li:hover > a, .navigation li:first-child + li + li + li + li + li + li:hover > a {
    color: white;
}

它使“mantels”文本保持白色,因为规则指定任何 a 是悬停在 li 上的直接子级,并且是第三个或第七个连续 li,它有 某个祖先,不一定是父级,他有 navigation 类。现在,在 .navigation 之后放置一个 > 可以解决这个问题,但我建议另一种选择:

不是给顶级 li 中的 ul 一个类,而是将该类放在 li 本身上。然后你可以有更简单的规则

.navigation li.has-subnav:hover {
    background: #80A353;
}
.navigation li.has-subnav:hover > a {
    color: white;
}

希望对您有所帮助!哦,我也会考虑只使用边框而不是背景图像来做子导航项之间的分隔符。

关于html - 行为不同的订单项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8852335/

相关文章:

html - Bootstrap : jumbotron image gets scrolled when scrolling down the page: want to make it fixed

javascript - 如何在视口(viewport)中触发惰性线条画家 svg 动画

javascript - 仅显示最接近的列表元素

html - 垂直居中标题中的各种文本?

javascript - jwPlayer onComplete 事件未触发(跨域嵌入)

php - 更新查询的 SQL 语法错误

css - 使其他标记位于自定义 divIcon 弹出窗口下方,而不是位于顶部

html - Canvas 元素的最大尺寸

HTML 输入忽略 flex-basis CSS 属性

javascript - 多级点击子菜单