0

就目前而言,我已经使用 background-position css 属性创建了一个导航菜单。点击这里

    #nav-menu li a{
    background: url("images/navbar.png") no-repeat scroll 0 0 transparent;
    display: block;
    cursor: pointer;
    height: 102px;
}

#nav-menu .shop a{
    background-position: left top;
    width: 139px;
}

在商店链接上,我创建了一个下拉功能来显示另一个菜单,我遇到的问题是我的财产中的所有标签都在复制背景

nav-menu li a

有没有办法我可以在我的节目中取消这个特定的背景图像并隐藏菜单以显示另一个背景图像?

4

3 回答 3

1

在#nav-menu li a 中,您应该使用后代运算符,以便只选择直接子代。

例如

#nav-menu > li > a
于 2012-08-24T11:51:13.683 回答
0

在你的 css 中替换:

#nav-menu li a{
background: url("images/navbar.png") no-repeat scroll 0 0 transparent;
display: block;
cursor: pointer;
height: 102px;
}

和 :

#nav-menu > li > a{
background: url("images/navbar.png") no-repeat scroll 0 0 transparent;
display: block;
cursor: pointer;
height: 102px;
}

在此处了解有关直接死者选择器(“ >”)的更多信息

于 2012-08-24T12:06:02.913 回答
0

您可以使用第一个孩子;仅将背景设置为第一个元素

     #nav-menu li:first-child a{
        background: url("images/navbar.png") no-repeat scroll 0 0 transparent;
    }

或者您可以在另一个元素<li>之后的所有元素上将背景强制为其他<li>元素

    #nav-menu li + li a{
        background-image: none;
    }
于 2012-08-24T12:10:22.427 回答