CSS菜单 - 在关注子菜单时保持父级悬停

时间:2013-04-19 14:11:28

标签: css drop-down-menu

我希望在导航辅助菜单时保持父级悬停颜色相同。

我查看了其他一些答案,例如herehere,但我无法弄明白。

以下是解释我想要完成的内容的视频:http://screencast.com/t/Bhfj6mtZkPZp

这是导航代码:

.primary-navigation {
    max-width: 1192px;
    margin: 20px 0px 52px 1px;
}

.primary-navigation ul {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    margin: 0;
    padding: 0;
    list-style: none;
}

.primary-navigation ul li {
    display: block;
    position: relative;
    float: left;
}

.primary-navigation li ul {
    display: none;
}

.primary-navigation ul li a {
    display: block;
    text-decoration: none;
    color: #fff;
    background: #ec6397;
    padding: 12px 22px 17px 22px;
    white-space: nowrap;
    -moz-transition: all 0.25s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out;
    border-right: 1px solid #f39cbd;
}

.primary-navigation ul li a:hover { 
    background: #f39cbd;
}

.primary-navigation li:hover ul {
    display: block;
    position: absolute;
    border-top: 1px solid #f39cbd;
    border-left: 1px solid #f39cbd;
}

.primary-navigation li:hover li {
    float: none;
    width: 300px;
    z-index: 3;
    border-bottom: 1px solid #f39cbd;
}

.primary-navigation li:hover a {
    background: #ec6397;
}

.primary-navigation li:hover li a:hover {
    background: #f39cbd;
    color: #000;
}

1 个答案:

答案 0 :(得分:15)

你可以改变这个

.primary-navigation ul li a:hover { 
    background: #f39cbd;
}

到这个

.primary-navigation ul li:hover a { 
    background: #f39cbd;
}

这样,当您将鼠标悬停在父级li上时,主导航项的颜色会发生变化。由于子菜单也应位于此li内,因此当在子菜单上移动时仍会触发悬停,因此链接的颜色也应保持其悬停状态。