2013-08-25 150 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

好,但一旦悬停测试最后的李:) –