【发布时间】:2011-06-02 03:40:22
【问题描述】:
我正在做一个网站设计,我有一些图像悬停效果,当您将鼠标悬停在图像上时,图像上的元素会显示出来。它在 Chome、Safari 和 FF 上运行良好,但在 IE 上不起作用,因为在 IE 上,:hover 代码只能在 a:hover 上运行。有没有办法为此提供一个 javascript 修复程序,或者向整个 div 添加一个锚点,以便它适用于每个浏览器?这是我的代码:
<html>
<head>
<style>
body { background: #FFF; }
#postimage {
width: 500px;
height: 335px;
}
#topbar {
width: 500px;
background: rgba(0, 0, 0, 0.75);
height: 50px;
position: absolute;
z-index: 999;
}
#bottombar {
width: 500px;
background: rgba(0, 0, 0, 0.75);
height: 50px;
position: absolute;
z-index: 999;
margin-top: -50px;
}
#postimage div#bottombar{
display: none;
}
#postimage:hover div#bottombar {
display: inline;
}
#postimage div#topbar{
display: none;
}
#postimage:hover div#topbar {
display: inline;
}
</style>
</head>
<body>
<div id="postimage">
<div id="topbar">1</div>
<img src="http://28.media.tumblr.com/tumblr_lltiujAaV81qghzpno1_500.jpg" border="0">
<div id="bottombar">2</div>
</div>
【问题讨论】:
-
IE 8 和 9 支持任何元素上的 css 悬停指令,我不确定 IE7。 IE6 没有。
-
只要您使用有效的文档类型,它只是在 IE6 及更低版本上的问题。我的建议:放弃对 IE6 的支持。它会拯救你的理智。
-
我们目前正在就 Meta 进行辩论,关于您是否真的选择和取消选择了一系列快速连续接受的答案,或者系统中是否存在错误。您的意见将不胜感激! meta.stackexchange.com/questions/92858/…(不,你没有做错什么,我们只是一群好奇的忧郁症!)
-
请不要以“嘿,伙计们,詹姆斯在这里”或类似的方式开始您的帖子。 Stack Overflow 是参考而非论坛,称呼/签名/标语不属于您的问题。
标签: javascript html css internet-explorer