1

这是我的代码,除了ie之外的所有代码都可以完美运行!主动根本不会开火

    a.Button span {
background: transparent url('images/form_sprite.png') no-repeat 0 0;
display: block;
height:45px;
line-height: 30px;
padding: 7px 0 5px 20px;
color: #fff;
background-position: 0 -44px;
}

a.Button {
background: transparent url('images/form_sprite.png') no-repeat top right;
display: block;
float: left;
height: 45px;
margin-right: 6px;
padding-right: 27px;
text-decoration: none;
font-family: Arial, Helvetica, sans-serif;
font-size:12px;
font-weight:bold;
}

a.Button:hover span {
background-position: 0 -136px;
}

a.Button:hover {
background-position: right -90px;
}

a.Button:active span {
background-position: 0 -225px;
}

a.Button:active {
background-position: right -181px;
}   

这是html:

<div class="clearbutton"> <a class="Button" href="#"><span>Button text</span></a> </div>

请问有什么想法吗?

4

2 回答 2

1

尝试更改a.Button:activea.Button span:active您的 CSS。这似乎正在触发:activecss,并且仍然适用于我的 chrome。

于 2011-12-31T19:14:05.460 回答
0

是的,:active伪类仅在用户直接单击该对象时在 IE 中触发。在这种情况下,链接。如果您单击子对象(跨度),则不会触发链接的活动事件。

正如 Aninemity 所说,您可以将样式应用于span:active(执行此操作的正确方法)。但在 IE6/7 中,:active仅对链接触发。如果您需要 IE6/7 支持,您将不得不想办法摆脱跨度。

于 2011-12-31T19:22:11.507 回答