IE7(有时)无法正确显示网站
Posted
技术标签:
【中文标题】IE7(有时)无法正确显示网站【英文标题】:IE7 (sometimes) not showing website properly 【发布时间】:2010-04-26 18:14:57 【问题描述】:我们有点绝望……我们已经开通了我们的网站http://www.buscounviaje.com
我们测试了所有浏览器(IE6-8、Firefox、Safari、Chrome ......)以确保一切正常。但是,有一些用户(IE7 和 IE6)抱怨他们看到的所有东西都是“白色”的黑色字母(即未应用 CSS 样式)。一位用户说他收到“错误 0:预期对象”
但是,我们在 Firebug 和本地安装的 IE6 和 7 中都没有看到该错误。其他使用 IE6 和 7 的用户也可以正确地可视化 Web。我们不知道问题出在哪里,也无法测试,因为我们的 IE6&7 工作正常。
任何人看到没有样式的网页并提示我们问题可能出在哪里?
我们能想到的原因...
我们正在压缩 js 和 css,某些版本的 IE6&7 无法解压缩它们 我们正在尝试在 javascript 中使用不存在的对象,而某些版本的 IE6 和 7 不喜欢它 缓存似乎不是问题...我们引导用户清空缓存,但他仍然无法正确查看网站。【问题讨论】:
他在ie7中的设置是否和你说的一样有效,即启用Javascript? 是的,他们启用了 javascript... 我们联系的用户说他可以正确查看所有其他网站。我们的网站是他唯一看不到的网站 【参考方案1】:下面我的想法列表中的一个点(我首先写的)可能说明了脚本错误。
至于未能应用样式表,我绝对同意这归结于压缩的想法。 SP2 之前的 XP 有一种压缩 CSS 和 JavaScript 的方式;强大的 Google-Fu 将我带到了 Apache 中的 properly documented solution for the CSS/JS compression problem。
推荐步骤:从您的样式表中删除 charset
声明,并将链接的解决方案应用到您的 httpd.conf
文件中。
还有一些想法:
@charset
声明往往是错误的,因为所有人都出去了。我可以更详细地介绍文档编码的原因和原因,但这不是时间或地点。底线:还有其他更可靠的方法可以将高位字符放入样式表和页面。使用它们。
有问题的站点运行 Apache,它支持透明的 gzip
编码,几乎所有非图像、即时和开箱即用的内容,以及您实际要支持的任何浏览器都将知道如何处理结果。为什么要依赖一个完全独立的功能,并且由于奇怪的实现而正确配置了服务器?
您会不时发现有人运行的 JScript 解释器版本与给定浏览器的测试配置文件中的版本不同。发生这种情况要么是因为用户没有应用更新,要么是因为他们从 Microsoft 下载了一些包含更新解释器的小部件。
XP MCE 处理插件(相对于 ActiveX,它是用于实例化、呈现和播放的底层 API)与其他当代 Win32 操作系统不同,我见过各种 JavaScript我无法在其他版本的 Windows 中重现该环境中的错误。
您肯定希望自己对此进行测试,但标准模式下的 IE8(即 IE8 用户的 doctype 声明的结果)完全忽略了条件 cmets。我之所以提到这一点,是因为我在您的 link
标签中看到了 <!-- [if IE8]>
。
【讨论】:
非常感谢 Ben,我将与准备 CSS 的人和负责 Apache 的人一起研究这个问题【参考方案2】:大概是这样的:
@charset "UTF-8"
【讨论】:
对不起...我不确定您的意思...您能给我更多信息吗?您认为我们应该在代码中添加这些内容吗? 它已经在你的 CSS 中了。如果你甚至不知道你的 CSS 长什么样,难怪你不能建立一个网站。 你知道,有时候一个项目涉及的人不止1个人,而且并不是所有人都知道所有的代码。这是其中一种情况......我希望你能给我更多关于“可能是这个:@charset utf-8”的信息,这样我就可以为从事 CSS 工作的人指出正确的方向......跨度> 【参考方案3】:Object expected 通常意味着您正在尝试使用未定义的变量。 (在 IE 中没有实现的东西?还是竞争条件?)这会停止 JS 的执行,但不会弄乱样式本身。
【讨论】:
样式没有被应用,所以也许“预期的对象”并不是问题的根源......奇怪的是我们在自己的 IE7 上调试时没有看到这个错误以上是关于IE7(有时)无法正确显示网站的主要内容,如果未能解决你的问题,请参考以下文章