我正在创建一组大型HTML组件,可以在所有浏览器中使用(这个想法从哪里开始呢 :-))。
现在,我想要一个按钮,并根据StackOverflow上的this帖子,我不应该使用按钮,因为它在点击时会产生3D推动效果。为了消除这个问题,建议使用
所以这是HTML:
现在,我想要一个按钮,并根据StackOverflow上的this帖子,我不应该使用按钮,因为它在点击时会产生3D推动效果。为了消除这个问题,建议使用
a href
并将其样式设置为我喜欢的按钮。所以这是HTML:
<a href="#" class="button">
<span>Yes</span>
</a>
当然,这里是HTML:
a.button {
color: #444;
border: 1px solid #ababab;
cursor: default;
padding: 0 5px 0 5px;
text-decoration: none;
}
a.button:hover {
background-color: #cde6f7;
border: 1px solid #92c0e0;
}
a:active.button {
background-color: #92c0e0;
border: 1px solid #2a8dd4;
}
没有什么特别复杂的。
现在,这在Google Chrome和Firefox中都可以正常工作,如此JsFiddle所示。
该按钮有3种不同的状态:
- 普通的“默认”按钮。
- 当你悬停在上面时的样式。
- 当你点击它时的样式。
现在,Internet Explorer在你点击按钮时不会应用新样式,它的样式与悬停时的样式相同。除非你点击边框(如果你成功点击边框,则会应用正确的样式)。
现在,为什么我会出现这种行为,它能被解决吗,因为这对我的控件套件的开发至关重要。
我知道可以通过在点击时添加或删除一个类来使用jQuery解决,但这似乎是一个非常丑陋的解决方案,如果有一个“CSS-Friendly”的解决方案,我想使用它。
<span>
元素引起的。 - devqon