我有这个选择在IE9上表现得很奇怪。 首先应该打开维基页面的链接不能仅在IE9浏览器上工作,第二个问题是悬停,为什么当光标通过帮助并注销图标被悬停背景颜色覆盖?
<ul id="main">
<li class="username" tabindex="1" > <a>USER</a>
<ul class="curent_buser">
<li class="help"><a href="http://www.wikipedia.org/">Help</a></li>
<li class="logoff"><a href="http://www.wikipedia.org/">LogOff</a></li>
</ul>
</li>
</ul>
CSS:
ul#main {
color: gray;
width: 120px;
border-left: 1px solid #f2f2f2;
border-right: 1px solid #f2f2f2;
border-top: 1px solid #f2f2f2;
list-style: none;
font-size: 12px;
letter-spacing: -1px;
font-weight: bold;
text-decoration: none;
height:30px;
background:green;
}
ul#main:hover {
opacity: 0.7;
text-decoration: none;
}
#main > li{
background: url('http://cdn1.iconfinder.com/data/icons/crystalproject/24x24/actions/1downarrow1.png') 100% 0 no-repeat;
outline:0;
padding:10px;
}
ul#main li ul {
display: none;
width: 116px;
background: transparent;
border-top: 1px solid #eaeaea;
padding: 2px;
list-style: none;
margin: 7px 0 0 -3px;
}
ul.curent_buser li a {
color: gray;;
cursor: pointer;
}
ul.curent_buser{
background:lime !important;
}
ul#main li ul li a {
display: block;
padding: 5px 0;
position: relative;
z-index: 5;
}
#main li:focus ul, #main li.username:active ul {
display: block;
}
.help{
background: url("http://cdn1.iconfinder.com/data/icons/musthave/16/Help.png") no-repeat 100% center ;
height: 25px;
margin-bottom: 2px;
border-bottom: 1px solid white;
}
.help:hover{
background: #f4f4f4;
}
.logoff{
background: url("http://cdn1.iconfinder.com/data/icons/cc_mono_icon_set/blacks/16x16/on-off.png") no-repeat 100% center ;
height: 25px;
}
.logoff:hover{
background: #f4f4f4 ;
height: 25px;
}
.help a,.logoff a{
color:gray;
font-family: Museo700Regular,sans-serif;
letter-spacing: 0;
font-size: small;
}
答案 0 :(得分:4)
我至少可以帮你解决Icon问题。问题是你用一种颜色掩盖了背景。 您可以拥有彩色或背景图像。不是都。您需要在背景中具有基本相同但具有不同颜色的不同图像,在悬停时不使用图像,或者在悬停时不使用颜色。
对不起,我对IE问题的帮助不大。我真诚地讨厌IE这样的事情。
编辑:您可以按照以下评论中的说明进行操作
.logoff:hover{
background: #f4f4f4 url("http://cdn1.iconfinder.com/data/icons/cc_mono_icon_set/blacks/16x16/on-off.png");
height: 25px;
}
感谢ANeves提供此信息。我也在这里学到了一些东西
答案 1 :(得分:3)
在悬停时,您将覆盖background
属性。由于此属性同时具有颜色和图像,因此您也会覆盖图像。
仅设置颜色,然后:
.help:hover{
background-color: #f4f4f4;
}
.logoff:hover{
background-color: #f4f4f4 ;
}
答案 2 :(得分:3)
好的,对于被覆盖的图标,问题是“ANeves”,
但您可以在CSS下方使用以防止额外的代码行:
#main > li > ul > li:hover
{
background-color: #f4f4f4;
}
对于IE9点击问题,只需在CSS下面添加:
#main ul:hover
{
display: block;
}
就是这样