2011-07-01 65 views
0

嗨,我需要一些幫助。該設計要求在每個菜單項之間有一個垂直行分隔符,但只有當它們未處於活動狀態時才需要。我需要從#a當前a(已完成)以及下一個a中刪除左側邊框。思考?css菜單:選擇器之後?

menu

#topmenu ul {margin: 0 0 7px 0; width: 100%;padding: 0;} 
#topmenu li {list-style: none;display: inline;margin: 0 0px;padding:15px 10px 15px 0px; 
line-height:15px;text-align:center;} 
#topmenu a:link, #topmenu a {color: #ffffff;text-decoration: none;margin: 0px 0px 0px 0px; 
font-weight:normal;padding: 0px 5px 0px 14px; 
border-left-color:#fff; border-left-style:solid;border-left-width:1px;} 
#topmenu ul li.item82 a, #topmenu #current {border:none;} 
#topmenu #current:after {border:none;} 
#topmenu a:hover{color: #EFEFEF;} 
#topmenu a:active{color: #EFEFEF;} 
#topmenu #current{color: #EFEFEF;background-color:#19bcb9;-moz-border-radius-topright:4px; 
-moz-border-radius-topleft:4px; 
border-top-left-radius: 4px;border-top-right-radius: 4px; 
-webkit-border-top-right-radius:4px;-webkit-border-top-left-radius:4px;} 

<ul class="menu"> 
<li class="item82"><a href="/about.html"><span>About Us</span></a></li> 
<li class="item62"><a href="/our-philosophy.html"><span>Our Philosophy</span></a></li> 
<li class="active item54" id="current"><a href="/services.html"><span>Services</span></a></li> 
<li class="item74"><a href="/soutions.html"><span>Soutions</span></a></li> 
<li class="item68"><a href="/workshops.html"><span>Workshops</span></a></li> 
<li class="item75"><a href="/whats-new.html"><span>What's New</span></a></li> 
</ul> 
+0

只是要清楚,我需要選擇李連接AFTER李#現在,而不僅僅是李。 – prophoto

回答

1

相鄰的兄弟選擇符+將起作用。你會的,但是在這種情況下,必須將它應用到子錨點元素:

#topmenu #current a, #topmenu #current + li a { 
    border-left-color: transparent ; 
} 

而不是設置邊界均未 - 嘗試設置顏色爲「透明」,使佈局ISN的對齊沒有改變。

+0

謝謝,完美無缺! – prophoto

1

我認爲你正在尋找的方便,花花公子CSS相鄰選擇。瞧瞧吧

http://www.w3.org/TR/CSS2/selector.html#adjacent-selectors

我覺得你想要

#topmenu #current + a{ 
border:none 
} 

但如果你已經使用JavaScript來添加#current ID它不會是難只需添加一個。 noborder類。

+0

我試過了,不幸的是它沒有工作。我需要在li#current之後選擇li中的a。 – prophoto