在我的一个ASP.Net应用程序中,我发现在Internet Explorer9中产生了一个奇怪的行为,而IE8工作得很好。
作为默认编码,我需要utf-8。这一点很重要,因为我使用的是德语,也就是所谓的“Umlaute”。
当页面第一次加载时,IE9决定使用“西欧”编码。据我所知,这是ISO 8859-1,Umlaute变成了奇怪的字母。在第二次加载时,IE9正确地使用了utf-8。在源代码中,我尝试了以下内容来告诉IE使用哪种编码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 TRANSITIONAL//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="de">
<meta http-equiv="content-type" content="text/html; charset=utf-8">为什么IE9在第一次加载时会如此奇怪?我还能告诉IE9如何工作呢?
发布于 2011-09-20 17:21:49
Firstable您托管站点的服务器可能会在标题中返回错误的编码信息;
第二,可能是字符串中的一些错误(该字符串中有错误的符号)。
三-在十六进制浏览器中打开你的页面(例如WinHex),发布第一行代码(有时编辑器将错误的数据放在第一个字节,我曾经偶然发现过一次)
如果这个站点是在线的,发布它的url,我就会试着找到一个问题。
发布于 2011-09-20 17:33:23
检查服务器的响应头它必须包含如下内容:
键值
Content-Type text/html;charset=utf-8
响应HTTP/1.1 200正常
如果不是,请检查您服务器设置,或者您的代码中必须有内容类型标题更改的位置
编辑:好的,编码是正确的,正如你应该检查响应的第一个字节的评论中所建议的那样,它似乎是以额外的字节开始的(通常是关于编码的信息)。
https://stackoverflow.com/questions/7482744
复制相似问题