z-index
上のオーバーレイ (より高い) を使用して画像の一部を強調表示しようとすると、非常に奇妙なバグが発生し:hover
ます。Safari / Firefox / Chrome では問題ありません。しかし、IE (8 または 9) では、:hover
オーバーレイが常に表示されない場合 (nobackground-color
またはvisibility:hidden
)をトリガーしないように見えるため、私の単純な CSS コードは機能しません。
HTML と CSS を使用した MWE は次のとおりです。
<html>
<head>
<style>
.photo-notes {
position: absolute;
z-index: 998;
}
.photo-notes ul {
position: relative;
}
.photo-notes li {
list-style: none;
position: absolute;
background: #ccc;
z-index: 999;
}
.photo-notes li:hover {
background: red;
}
.photo-container {
z-index: 1;
}
</style>
</head>
<body>
<div>
<div class="photo-notes">
<ul>
<li style="left: 25px; top: 20px; width: 50px; height: 100px;"> </li>
</ul>
</div>
<div class="photo-container">
<img src="http://www.google.com/logos/2012/newyearsday-2012-hp.jpg"/>
</div>
</div>
</body>
</html>
上記のコードは機能しますが、スタイリングを削除background: #ccc
または追加しようとすると、IE では動作しなくなります (これ以上の効果はありません)。visibility:hidden
li
:hover
さらに奇妙なことは、行が削除された場合で:hover
もなくても機能する (トリガーされる) ことです。したがって、考えられるようにIEで表示されない要素では不可能であるという問題ではなく、明示的なes をどこにでも追加しようとしましたが成功しませんでした...background
visibility:hidden
li
<img>
:hover
z-index
何が起こっているのか、それを解決する方法について何か考えはありますか?