我的css悬停在IE上有问题。
简化;我基本上有一个容器div,它会在盘旋时显示一个小div,里面有一些<select>
标签(见下面的代码)。这个设置适用于所有主流浏览器,除了(谁猜对了)在Internet Explorer(11和可能还有更低版本)上。
悬停可以正常使用,但只要您尝试从两个<option>
标签中选择<select>
,就会出现:hover由于某种原因不再有效div消失了。
在chrome / firefox等中尝试此示例,以查看所需的结果&amp;然后再尝试在IE11中查看问题。
.containerDiv {
position: fixed;
width: 500px;
height: 500px;
background: red;
top: 0;
left: 0;
}
.containerDiv:hover .someDiv {
left:0;
}
.someDiv {
position:absolute;
top:0;
left:-300px;
width: 300px;
background: blue;
transition: all ease .5s;
}
<div class="containerDiv">
<div class="hoverMe">
Hover Me
<div class="someDiv">
<h3>
Hi, I'm SomeDiv
</h3>
<select>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
<option>Option 4</option>
</select>
<br><br>
<select>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
<option>Option 4</option>
</select>
</div>
</div>
</div>
答案 0 :(得分:1)
正如我在评论中所说,你可以使用类似这样的东西来解决这个问题:
$("select").on("focus", function() {
$(this).parent().addClass("hovered");
}).on("blur", function() {
$(this).parent().removeClass("hovered");
});
然后将.yourParentElement.hovered
应用于与.yourParentElement:hover
相同的规则:
.yourParentElement:hover, .yourParentElement.hovered { /* some css rules */}