0

当页面上有动画 gif 时,输入中的光标会随着 IE7 闪烁。

拿走 gif,问题就消失了。

编辑(再次):我真正需要的是知道一个奇怪错误的答案的人。

我是一名 10 年经验丰富的网络应用程序开发人员。相信我,我知道如何调试——例如,知道动画 gif 是屏幕绘制的原因是成功调试的结果。解决这个问题是另一回事。

编辑(再次,再次),使用我的 gif 和下面答案三中的代码。

<html>
    <head>
        <style type="text/css">
            #img {
                position: absolute;
            }
            #dv {
                background-color: transparent;
                border: 1px solid Black;
                height: 450px;
                position: absolute;
                width: 600px;
            }
            #frm {
                left: 170px;
                position: absolute;
                top: 100px;
            }
        </style>
    </head>
    <body>
        <img src="http://www.johnherr.net/skeleton.gif" id="img">
        <div id="dv">
        </div>
        <form id="frm">
            <input type="text">
        </form>
    </body>
</html>
4

3 回答 3

0

可以说我们有一个绝对定位的动画 gif。它约为 600 x 400。它位于另一个腹肌下方。提供透明层的定位 div。最后,表格本身是绝对的。定位在那之上。

<style type="text/css">
#img {
    position: absolute;
}
#dv {
    background-color: transparent;
    border: 1px solid Black;
    height: 450px;
    position: absolute;
    width: 600px;
}
#frm {
    left: 170px;
    position: absolute;
    top: 100px;
}
</style>
<img src="http://vulcan.wr.usgs.gov/Imgs/Video/MSH/MSH06/MSH06_MOVIE_before_after_from_brutus_10-21_and_10-22-06_animated.gif" id="img">
<div id="dv">
</div>
<form id="frm">
<input type="text">
</form>

我试图尽可能地复制你所描述的内容。我将上述内容加载到 IE 6、7 和 8 中,但看不到任何闪烁的光标问题。

鉴于我可以提出一个不存在该问题的实现,IE 7 中似乎没有任何一般的动画GIF 原因输入光标闪烁错误,并且您的特定标记和 CSS 中的某些内容正在暴露那个浏览器的问题。

拿走 gif,问题就消失了。

知道动画 gif 是屏幕绘制的原因是成功调试的结果。

当然,添加动画 gif 是导致您所看到的拼图的最后一块。但正如我所展示的,您可以在绝对定位的动画 gif 上使用绝对定位的表单,它们之间有一个透明的 div,并且光标不会闪烁。

我认为你将不得不一次一层地剥离你正在做的事情,直到你可以明确地确定你的标记或 CSS 中暴露问题的地方。

还有另一种可能性,您看到的闪烁可能是您的视频卡和/或视频驱动程序的产物。您可能想尝试在具有完全不同硬件的机器上查看 IE 7 下的页面以排除这种可能性。

于 2009-05-21T19:56:14.703 回答
0

也许是您的 CPU 无法处理负载?这尤其可能是在运行密集 javascript 的网站上的旧机器上引起的。

于 2009-05-21T18:02:05.697 回答
0

我遇到过同样的问题。删除动画 gif 和闪烁停止。

查看 CSS,我注意到图像正在调整大小以进行显示。

我使用在线编辑器创建了所需大小的图像副本。

将动画 gif 切换到不需要调整大小的版本解决了这个问题。

于 2012-09-28T09:45:30.697 回答