CSS固定定位在IE 11中无效

6
我有一个图片库,底部带有标题说明(上图)。这些标题使用position:fixed; bottom:0;,在所有浏览器中都能正常工作,但是IE却不行,即使是最新版本(11.096…)。标题被固定在屏幕顶部,而不是底部(下图)。
我尝试了一些自己找到的建议:
  • 验证正确的文档类型:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
  • 添加<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
  • 在我的CSS中添加表达式:
    position:fixed; _position:absolute; bottom:0; _top:expression(document.body.scrollTop+document.body.clientHeight-this.clientHeight);
我错过了什么?

如果我错过了明显的目的,请原谅我的愚钝,但是您不是在使用X-UA-Compatible元标记强制浏览器进入IE7兼容模式吗?将IE=EmulateIE7替换为IE=edge不会使其按预期行事吗? - Aaron
我也是这么想的。但我在一篇帖子中读到了这个,然后尝试了一下,只是想在别人建议之前指出来。 - Ty Morton
啊,好的。看起来你已经根据下面的建议找到了一个解决方法。祝你在IE调试中愉快! - Aaron
1个回答

18
  1. 尝试使用 position: expression(fixed);

  2. 尝试在父元素上使用 position: relative;,并在标题上使用 position: absolute;。这是跨浏览器的。


在这种情况下,选项2不可行。滑块需要绝对定位的包含div才能正常工作。 - Ty Morton
你试过了吗?在另一个绝对定位元素内部,定位应该适用于绝对定位元素。 - Ciprian
事实证明,问题出在另一个CSS文件上,那是随着创建幻灯片的WP插件一起提供的。由于某种原因,在IE中我的自定义CSS无法覆盖它。在其他所有浏览器中,它都按预期工作,但IE仍然应用它。很奇怪。不过我最终还是改成了absolute。它达到了相同的效果,并且保证可以正常工作。谢谢! - Ty Morton

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接