Html 似乎IE动画/处理我的loading.gif,即使我设置了display:none?

Html 似乎IE动画/处理我的loading.gif,即使我设置了display:none?,html,css,Html,Css,我相信这是因为每当我执行ajax请求时(loading.gif被设置为display:block),动画都不会从同一位置开始。起点感觉是随机的,这让我觉得IE中的动画仍然在幕后进行。在Firefox中,动画总是从“零开始” 有什么想法吗?我不知道如何在IE和FF中对GIF进行内部动画制作,但我想很有可能一个引擎在幕后运行动画,而另一个引擎不运行。我怀疑这是否有一个标准 设置图像元素的src属性(在设置display的同一时刻)应该可以让动画可靠地从头开始。根据我的经验,IE每次都从一开始就运行G

我相信这是因为每当我执行ajax请求时(loading.gif被设置为display:block),动画都不会从同一位置开始。起点感觉是随机的,这让我觉得IE中的动画仍然在幕后进行。在Firefox中,动画总是从“零开始”


有什么想法吗?

我不知道如何在IE和FF中对GIF进行内部动画制作,但我想很有可能一个引擎在幕后运行动画,而另一个引擎不运行。我怀疑这是否有一个标准


设置图像元素的
src
属性(在设置
display
的同一时刻)应该可以让动画可靠地从头开始。

根据我的经验,IE每次都从一开始就运行GIF动画,但速度要慢得多。在FF中,它是完美的,Chrome只运行一次。如果是循环gif,且显示设置为“无”,则它们将在后台运行,因为它们已被调用但未显示。。我想。

这样想,如果打开图像但禁用CSS,gif会做什么?它将一直运行。display:none告诉浏览器“这个元素在网页上,但就是不显示它。”所以它一直在运行是有意义的,这可能就是IE实现背后的逻辑


我不是一个js向导,但我希望实际从文档中删除图像节点,然后在需要时再次插入它会达到预期效果,Pekka关于设置src属性的建议听起来也不错。

是的,但Firefox仍然会在每次我设置display:block时重新启动动画。我将研究src/节点删除方法。