【发布时间】:2015-08-10 20:14:40
【问题描述】:
遇到了一个有点烦人的问题,我束手无策,因此寻求帮助。
我已经制作了一个用于导航的 CodePen - http://codepen.io/nickelse/pen/yNwPwv
当您将鼠标悬停在其中一个导航链接上时,它会覆盖左侧分隔线但显示右侧分隔线,有人对我如何让链接悬停在两个分隔线或位于两者中间有任何建议吗?
干杯,
尼克
<div class="navigation cf">
<div class="menu cf">
<ul>
<li><a href="#">Poker Chips</a></li>
<li>
<a href="#">Poker Chip Sets<i class="fa fa-caret-down"></i></a>
<ul class="sub-menu">
<li><a href="#">Sub Link 1</a></li>
<li><a href="#">Sub Link 2</a></li>
<li><a href="#">Sub Link 3</a></li>
<li><a href="#">Sub Link 4</a></li>
</ul>
</li>
<li><a href="#">Poker Tables</a></li>
<li><a href="#">Poker Chip Cases</a></li>
<li><a href="#">Poker Playing Cards</a></li>
<li><a href="#">Poker Accessories</a></li>
</ul>
</div>
</div>
body {
background: #272727;
}
/*----- Menu Outline -----*/
.navigation {
width: 100%;
background: #454545;
border-bottom: 3px solid #666;
}
.menu {
width: 1000px;
margin: 0px auto;
text-align: center;
font-size: 0;
}
.menu li {
margin: 0px;
}
.menu a {
transition: all linear 0.15s;
color: #fff;
}
.menu li:hover > a {
text-decoration: none;
color: #ddd;
}
.menu .arrow {
font-size: 11px;
line-height: 0%;
}
/*----- Top Level -----*/
.menu > ul {
margin: 0;
padding: 0;
}
.menu > ul > li {
display: inline-block;
position: relative;
font-size: 14px;
background: url(http://i.imgur.com/ijNENpN.png) no-repeat left 50%;
}
.menu > ul > li:first-child {
background: none;
}
.menu > ul > li > a {
padding: 20px 24px;
display: block;
}
.menu > ul > li:hover > a{
background: #666;
}
/*----- Bottom Level -----*/
.menu li:hover .sub-menu {
z-index: 1;
opacity: 1;
}
.sub-menu {
width: 280px;
padding: 0;
position: absolute;
top: 100%;
left: 0px;
z-index: -1;
opacity: 0;
transition: opacity linear 0.2s;
background: #666;
text-align: left;
}
.sub-menu li {
display: block;
font-size: 14px;
}
.sub-menu li a {
padding: 10px 24px;
display: block;
color: #fff;
}
.sub-menu li a:hover {
background: #353535;
}
.navigation .fa.fa-caret-down {
margin-left: 6px;
}
.cf:before,
.cf:after {
content: " "; /* 1 */
display: table; /* 2 */
}
.cf:after {
clear: both;
}
/** For IE 6/7 only - Include this rule to trigger hasLayout and contain floats. */
.cf {
*zoom: 1;
}
【问题讨论】:
-
我承认我的第一个想法是不要使用背景图像作为分隔线...您最好使用边框或伪元素。
-
@Paulie_D 同意,图片似乎没有必要。
标签: html css navigation