【发布时间】:2011-08-16 14:08:17
【问题描述】:
此代码(它是来自实际页面的有效 sn-p)在 Safari 和 Firefox 以及 IE7 和 8 上的一个虚拟主机上按预期工作,但是当它移动到另一个主机时,“固定”位置在 IE 上被忽略:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test Page</title>
<style type="text/css">
.alrtfrnt { background-color:gray;}
.alrtfrnt { position:fixed;top:33%;left:33%;height:150px;width:300px;z-index:9;}
</style>
</head>
<body>
<div class='alrtfrnt'></div>
</body>
</html>
如果将“固定”更改为“绝对”,则可以正常工作,但这不是要求。
这不太可能是缓存问题,因为这从“真实”页面开始,并一直持续到一些全新的页面。我还更改了块上的颜色以确保被拾取并设置 IE 以检查每次页面访问时的更新。
我不知道为什么完全相同的代码应该根据服务器以不同的方式显示,所以任何关于我可以检查或更改的下一件事的线索将不胜感激。
【问题讨论】:
-
在 HTML/CSS/脚本文本输出方面完全相同的页面会在不同的服务器环境(您的主机)中显示不同,这是荒谬的。请提供一些链接进行演示。
-
一种解释可能是缓存,因为它基于域名。确保在重新加载页面之前清除缓存。
-
我为什么要问这个问题,或者如果我的代码没有发生的话,我为什么要费力地将我的代码削减到绝对最低限度?这很可能是“荒谬的”,但我有两个不同主机上的相同页面,它们以不同的方式显示。我无法提供链接,因为测试页面位于本地 VM 上。
-
@Thilo,好点子。我已更新问题以解释为什么它不太可能是缓存问题。
-
只有不同版本的 IE 才能导致您遇到的问题!请记住,主机不会改变客户端浏览器读取页面的方式...