2013-08-25 50 views
2

希望有人能讓我知道這是否可能,因爲我已經搜索到了,並且無法達到我想要的效果。中心a:懸停邊框並指定邊框的寬度

我基本上想要將邊框懸停設置爲居中,所以當您將鼠標懸停在邊框底部居中的鏈接上時。我希望邊框寬度爲20px左右的固定尺寸並居中。

正如你可以看到到目前爲止,它的真正基礎和的jsfiddle是在這裏:http://jsfiddle.net/pCQLN/3/

我想是這樣顯示的下圖中:


enter image description here


謝謝你任何時候都可以饒你!

這是我的代碼;

HTML

<div id="wrap"> 
<div id="nav"> 
    <ul> 
    <li><a href="#">Home</a></li> 
    <li><a href="#">About</a></li> 
    <li><a href="#">Projects</a></li> 
    <li><a href="#">Blog</a></li> 
    </ul> 
</div> 
</div> 

CSS

#wrap { 
    width:40em; 
    height:3em; 
    margin:0 auto; 
} 
#nav { 
    float:right; 
    width:75%; 
} 
#nav ul { 
    display:inline; 
    list-style: none; 
    float: right; 
} 
#nav li { 
    float: left; 
    width:50px padding-right:1em; 
} 
#nav a { 
    text-align:center; 
    text-decoration:none; 
    color: #888; 
    font-size:1em; 
    float: left; 
} 
#nav a:hover { 
    color:#212121; 
    display:block; 
    width:20px; 
    margin:0 auto; 
    border-bottom:3px solid #000; 
} 
+0

你在尋找這樣的事情http://jsfiddle.net/pCQLN/4/? –

+0

是的,除了我想邊界長度爲20像素左右,所以它是小得多:)很像這樣的圖片:[鏈接](http://i.imgur.com/u6DZuKG.jpg)謝謝:)) –

回答

8

使用:afterhover僞選擇組合僞選擇。

#nav a:hover:after{ 
    content: ""; 
    color:#212121; 
    display:block; 
    width:20px; 
    margin:0 auto; 
    border-bottom:3px solid #000; 
} 

Working Fiddle

+0

絕對完美!非常感謝!欣賞你的時間。它不會讓我投票,雖然作爲我的第一篇文章:( –

+1

好的工作,保持標記乾淨! – Jeffpowrs

+0

@JasonKing如果我的帖子是有幫助的,然後標記爲答案:) –

1

添加一個跨度,中心它,並給它你a內的底邊框。在懸停時顯示。

jsfiddle

<div id="wrap"> 
    <div id="nav"> 
     <ul> 
      <li><a href="#">Home<span class="line"></span></a></li> 
     <li><a href="#">About<span class="line"></span></a></li> 
     <li><a href="#">Projects<span class="line"></span></a></li> 
     <li><a href="#">Blog<span class="line"></span></a></li> 
     </ul> 
    </div> 
    </div> 
+0

再次謝謝你這麼多!真的很感謝你的時間!它不會讓我投票,雖然作爲我的第一篇文章:( –

+0

沒問題的人,我這樣做是爲了幫助人們。Rep是好的,但它不是什麼大不了的。此外,Mr_Green的答案更好:DI沒有想到關於使用':之後' – Jacques

0

你可以嘗試這樣的事情:

<li><a href="#">Home</a><span class="hovered"></span></li> 


.hovered { 
    margin: 0; 
    height: 3px; 
    width: 20px; 
    background-color:transparent; 
    display: inline-block; 
} 

#nav a:hover + .hovered { 

    background-color: black; 
} 

http://jsfiddle.net/pCQLN/9/

+0

好,但一旦懸停測試最後的李:) –