:hover
にオーバーレイ(上位z-index
)がある画像の一部を強調表示しようとする非常に奇妙なバグがあります。 Safari/Firefox/Chromeでは問題ありません。しかし、IE(8または9)、私の単純なCSSコードは、オーバーレイ(無background-color
またはvisibility:hidden
)は常に表示されていないないときにIEが:hover
をトリガしていないように見えるように動作しない奇妙な:zインデックスとimgのホバリングバグ
ここでMWEですHTMLとCSS:
<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
を削除するかli
スタイリングへ/からvisibility:hidden
を追加しようとした場合、それはIE(これ以上:hover
効果)の下で働いて停止します。
追加奇妙なことは<img>
行が削除された場合、それはli
にbackground
なしかvisibility:hidden
で(:hover
がトリガされます)動作しないということです。だから、:hover
の問題はIEでは見えない要素では不可能であり、私はどこでも明白にz-index
を追加しようとしました...
何が起こっているのか、どのようにそれを解決する?