Internet explorer 导致IE中输入闪烁的动画GIF

Internet explorer 导致IE中输入闪烁的动画GIF,internet-explorer,gif,animated,Internet Explorer,Gif,Animated,当页面上有动画gif时,输入中的光标随着IE7闪烁 拿走gif,问题就消失了 编辑(再次): 我真正需要的是一个知道奇怪ie bug答案的人 我是一名有10年经验的web应用程序开发人员。相信我,我知道如何调试——例如,知道动画gif是屏幕绘制的原因是调试成功的结果。解决这个问题是另一回事 使用我的gif和下面答案三中的代码编辑(再次,再次) <html> <head> <style type="text/css">

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

拿走gif,问题就消失了

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

我是一名有10年经验的web应用程序开发人员。相信我,我知道如何调试——例如,知道动画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>

#img{
位置:绝对位置;
}
#dv{
背景色:透明;
边框:1px纯黑;
高度:450px;
位置:绝对位置;
宽度:600px;
}
#frm{
左:170px;
位置:绝对位置;
顶部:100px;
}

也许是您的CPU无法处理负载?这尤其可能是在运行密集型javascript的网站上的旧计算机上造成的

只要说我们有一个 动画gif绝对定位。信息技术 约为600 x 400。它就在下面 另一个腹肌。定位div哪个 提供透明层。最后 表格本身就是abs。定位 在那上面


#img{
位置:绝对位置;
}
#dv{
背景色:透明;
边框:1px纯黑;
高度:450px;
位置:绝对位置;
宽度:600px;
}
#frm{
左:170px;
位置:绝对位置;
顶部:100px;
}
我试着尽可能地复制你描述的内容。我将上述内容加载到IE6、7和8中,无法看到任何闪烁的光标问题

考虑到我可以想出一个不会出现问题的实现,在IE 7中似乎没有任何通用的动画gif导致输入光标闪烁的错误,在您的特定标记和CSS中也有一些东西暴露了该浏览器中的问题

去掉gif,问题就来了 他走了

知道一个事实,动画 gif是屏幕绘制的原因 是成功调试的结果

当然,添加动画gif是你看到的最后一个谜题。但正如我所演示的,你可以在绝对定位的动画gif上有一个绝对定位的表单,在它们之间有一个透明的div,并且光标不会闪烁

我认为您必须一层一层地剥离您正在做的事情,直到您能够明确地确定在标记或CSS中暴露问题的是什么


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

我也有同样的问题。移除动画gif,闪烁停止

看着CSS,我注意到图像正在调整大小以便于显示

我使用在线编辑器创建了一个图像副本,大小符合我的需要


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

请提供一些HTML,也可以告诉我gif的大小(尺寸和文件大小)。调试此类问题的第一步是删除周围的所有垃圾。如果在这个过程中它开始工作,你就完成了。如果没有,您已经将问题尽可能简单,这是调试过程中的最佳选择,即使您没有请求外部帮助。不,不是。这台机器很好。我在一家游戏公司工作,所以他们唯一不便宜的就是CPU、RAM和视频卡:)请提供一些html,这样我们至少知道你是如何放置它的。我很感激你的尝试,但你是错误的。您在示例中使用的动画gif的帧率太低。要明确的是:我没有得到你的例子闪烁。我修改了你的代码,使用了我的图像,闪烁就在那里。我编辑了我的原始帖子来反映这一点。我很感激你的尝试,但我的问题仍然存在,原始分析仍然是最好的。你怎么知道问题中的图像已经调整了大小?
<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>