【发布时间】:2014-09-19 16:40:29
【问题描述】:
我目前在 IE 上遇到了这个问题 - http://jsbin.com/riyaxewo/4
HTML
<div class="a">
1
</div>
<div class="b">
2
</div>
CSS
.a, .b {
height: 50px;
width: 50px;
padding: 10px 10px;
border: 1px solid;
text-align: center;
}
.a:active, .b:active {
background-color: red;
}
.a:hover + .b {
background-color: transparent;
}
.a:active + .b {
background-color: yellow;
}
预期的结果是,只要按下框 #1,框 #2 就会变成黄色,但是,在 IE 上这个 效果只发生一次,以后就不会再发生了。
我在 CSS 中而不是以编程方式执行此操作的原因是因为我希望只要在元素上按下鼠标就可以产生效果,即使在其他地方释放了鼠标按钮(这意味着我不能依赖mouseup,而mouseleave/mouseout 不会得到我想要的结果)
【问题讨论】:
-
设法使用 jquery 和事件命名空间解决了这个问题 - jsbin.com/riyaxewo/11
标签: javascript html css internet-explorer css-selectors