提问者:小点点

IE11:悬停在选择上时悬停效果停止工作


我在IE上的css悬停有问题。

简化;我基本上有一个容器div,它将在悬停时显示一个小的div,里面有一些标记中选择一个,:hover由于某种原因将不再工作,div将消失。

在chrome/firefox等中尝试此示例以查看所需的结果&然后在IE11中再试一次以查看问题所在。

null

.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>

null


共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 */}