2012-08-24 109 views
0

就像我已經創建了一個使用background-position css屬性的導航菜單。 click here背景定位下拉菜單問題

#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; 
} 
的店鋪鏈接我創建了一個下拉功能,以顯示另一個菜單,我有這個問題上

是我所有的財產中的標籤被複制

導航菜單裏的背景a

有沒有一種方法可以在我的顯示和隱藏菜單中取消這個特定的背景圖像以顯示另一個背景圖像?

+0

你的鏈接被打破!在小提琴中舉個例子 –

+0

@NithinEmmanuel它適用於我。 –

+0

鏈接適合我。 – JohnDevelops

回答

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; 
} 

瞭解更多關於直接被繼承人選擇( 「>」)Here

1

in#nav-menu li a您應該使用後代操作符,以便只選擇直接子項。

例如

#nav-menu > li > a 
+0

我不太明白你的意思,是否有可能在小提琴中舉個例子? – NewBoy

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; 
    }