我在悬停时使用背景颜色,在徽标上以及在某些图像周围填充时遇到问题。
对于背景颜色,它是您在左侧导航栏上看到的徽标,即CAUL / CBUA。它的'悬停状态切换到this image,悬停的背景应该像它旁边的链接一样填满整个块。
对于图像的填充,它位于相同导航栏的右侧。它们是社交图标我敢肯定不难看出填充应该在哪里。
Here's the link to what I have so far. You can see the navigation bar here.
这是我的CSS:
/* Navigation bar */
#navi {
height: 40px;
background: #1e416f;
font-size: 14px;
color: white;
text-transform: uppercase;
margin: 0 0 20px 0;
}
#navi a:hover {
background: white;
color: #1e416f;
}
.logo {
margin: 5px;
padding: 0;
float: left;
}
.logo a {
float: left;
margin: 2px 10px;
width: 36px;
height: 26px;
background: url(/imgs/navi/caul_white_nav.png) left top no-repeat;
text-indent: -9999px;
}
.logo a:hover {
background: url(/imgs/navi-hover/caul_blue_nav.png) left top no-repeat;
}
#primary-nav, #tools-nav {
list-style: none;
margin: 0;
padding: 0;
}
#primary-nav li, #primary-nav a,
#tools-nav li, #tools-nav a { float: left; }
#primary-nav a, #tools-nav a {
color: white;
text-decoration: none;
padding: 0 10px;
border-right: 1px solid white;
line-height: 40px;
}
#primary-nav li:first-child a, #tools-nav li:first-child a {
border-left: 1px solid white;
}
#tools-nav {
float: right;
}
#tools-nav .icon a {
text-indent: -9999px;
}
#tools-nav .email a {
background: url(/imgs/navi/mail.png) no-repeat;
width: 20px;
}
#tools-nav .email a:hover {
background: url(/imgs/navi-hover/hover_mail.png) no-repeat;
width: 20px;
}
#tools-nav .twitter a {
background: url(/imgs/navi/twitter.png) no-repeat;
width: 20px;
}
#tools-nav .twitter a:hover {
background: url(/imgs/navi-hover/hover-twitter.png) no-repeat;
width: 20px;
}
#tools-nav .search a {
background: url(/imgs/navi/search.png) no-repeat;
width: 20px;
}
#tools-nav .search a:hover {
background: url(/imgs/navi-hover/hover_search.png) no-repeat;
width: 20px;
}
HTML:
<!-- NAVIGATION -->
<div id="navi">
<h1 class="logo"><a href="#">CAUL/CBUA</a></h1>
<ul id="primary-nav">
<li><a href="#">Directories</a></li>
<li><a href="#">Committees</a></li>
<li><a href="#">Resources</a></li>
<li><a href="#">About</a></li>
</ul>
<ul id="tools-nav">
<li class="login"><a href="#">Log In</a></li>
<li class="email icon"><a href="#">Email</a></li>
<li class="twitter icon"><a href="#">Twitter</a></li>
<li class="search icon"><a href="#">Search</a></li>
</ul>
</div>
答案 0 :(得分:1)
试试这个:
#navi.logo {
margin: 5px;
padding: 0;
float: left;
}
#navi .logo a {
float: left;
margin: 2px 10px;
width: 36px;
height: 26px;
background: url(/imgs/navi/caul_white_nav.png) left top no-repeat;
text-indent: -9999px;
}
#navi .logo a:hover {
background: url(/imgs/navi-hover/caul_blue_nav.png) left top no-repeat;
}
答案 1 :(得分:1)
在活动和悬停时尝试此方法。 (背景位置中心)。
#tools-nav .email a {
background: url("/imgs/navi/mail.png") no-repeat scroll center center transparent;
width: 20px;
}
答案 2 :(得分:1)
这可能对某人有所帮助:
.menuItem:hover
和
.menuItem :hover
不一样,小心!
答案 3 :(得分:0)
你的选择器被覆盖了CSS Selector范围/顺序。更具体的覆盖更普遍的那些,在这种情况下,#navi a:hover
覆盖,.logo a:hover
使您的悬停影响不起作用。你被覆盖的财产是background
,将其更改为background-color: white;
,你会没事的