`

解决让浏览器正确识别网页编码的办法

阅读更多

今天 我到网吧里上网,看了下我的网站,进去的时候发现主页竟然一片空白,吓了我一跳,难道我上次把主页修改出错了? 看下浏览器的进度,已经载入完成了啊,怎么是一片空白,应该不会是代码执行效率问题.于是我查看了下源文件,已经全部输出了,这是怎么回事???感觉有点 懵了.

于是我进了我的后台,修改下我的模板,把它改到原始状态,然后刷新,再次打开浏览器,怎么还一片空白的呀!!! 更是郁闷了,检查了下代码语法,没错啊,怎么就不能显示的呢?

难道是浏览器版本问题,我就想,.于是看了下这家网吧里的浏览器版本,ie6.0.很可能是出在这浏览器身上!

我又仔细检查了下代码,编码设成:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

看了下浏览器现在的编码,竟然是gb2312, 我的不是已经明确给浏览器发话了:"我的网页是 utf-8编码"

可浏览器怎么就不听话,设成 gb2312-80 呢?

看来真的浏览器跟不上的原因搞起的!!

想了下,怎么解决让低版本的浏览器听懂我的网页语言呢???

网上 搜了下,还真找到解决的办法,下面是引用:

在windows操作系统上使用IE作为浏览器时。常常会发生这样的问题:在浏览使用UTF-8编码的网页时,浏览器无法自动侦测(即没有设定“自动选择”编码格式时)该页面所用的编码。即使网页已经声明过编码格式:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

// php 用 header("Content-Type:text/html;charset=UTF-8");

,由此造成某些含有中文UTF-8编码的页面产生空白输出。

如果使用的是Mozilla、Mozilla Firefox、Sarafi的浏览器这不会造成这个问题。这是由于IE解析网页编码时以HTML内的标签优先,而后才是HTTP header内的讯息;而mozilla系列的浏览器则刚刚相反。

由于UTF-8为3个字节表示一个汉子,而普通的GB2312或BIG5是两个。页面输出时,由于上 述原因,使浏览器解析、输出<title></title>的内容时,如果在</title>前有奇数个全角字符 时,IE把UTF-8当作两个字节解析时出现半个汉字的情况,这时该半个汉字会和</title>的<结合成一个乱码字,导致IE无法 读完<title>部分,使整个页面为空百输出。而这个时候如果察看源文件的话,会发现实际上整个叶面全部已经输出了。

因此最简单的解决办法是再网页文件 的<head></head>标签中一定要把字符定义<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 放在<title></title>之前.

问题解决了. 我一直用的是ie7 来浏览我的个人主页,没试过ie6的,没想到会有这样的问题,看来以后建站都要拿几个浏览器来检测了,不然还不吓跑一部分ie6忠实者!!!

分享到:
评论

相关推荐

    不同浏览器上中文文件名的下载乱码问题

    不同浏览器上中文文件名的下载乱码问题 浏览器IEChromeSafariOpera 浏览器能正确识别的编码格式

    google浏览器查看源码中文乱码 - Set Character Encoding_0.51_chrome.zip

    chrome 5.5 之后取消编码设置,采用自动识别编码,但是在部分设置不规范不正确的网站,新版浏览器无法准确判断其使用的编码,导致网站显示乱码, 本文件也有GitHub开源地址:...

    爬虫工具-字体反爬工具

    这样,即使爬虫程序成功获取到网页源代码,也无法直接解析出正确的文本内容。 为了应对字体反爬工具,爬虫程序需要进行相应的处理。以下是一些常见的应对策略: 1. 字体映射表:爬虫程序可以通过分析网页中的CSS...

    Gecko架构浅析之编码检测和转换

    Gecko是一套网络排版引擎,由来已久,为当年大名鼎鼎的netscape网络浏览器流传而来,后面...所以,在这种场景下,浏览器是否能正确识别每个地区的网页的编码格式,并正确地显示出来,就尤为重要了。有一部分网页,可能

    JSP的系统性教材

    这样浏览器就可以正确地选择字符集,而不需要人工选择。定义网页的编码方式格式如下: ; charset=字符集类型"&gt; 其中,http-equiv表示传送HTTP通信协议的头,而在content中是具体的属性值。每个属性都是由name和value...

    Encoding

    网友netstarry写的一个处理字符编码的类,很好的解决了php中字符转换的问题 前一阵子见到了qiushuiwuhen君的关于gbk,unicode,big5的转换的文章 ...在浏览器中使用UTF-8编码察看,将会看到正确的字符.

    HTML参考手册.chm

    当你想把网页制作成某种模样时,需要使用一种编码向网络浏览器来进行解释,这种编码就被称为HTML代码。  一个HTML文件是一页文字信息,就象一封电子邮件或一个word字处理文档,而且实际上你完全可以使用Word字处理...

    Web应用安全:体验Basic认证.pptx

    ②使用Fiddler监听请求,可以看到在未进行认证或认证失败的情况下,服务端会返回401 Unauthorized给客户端,并附带Challenge(质询),即在Response Header中添加WWW-Authenticate标头,浏览器识别到Basic后弹出...

    牛叉内容管理系统(NiuXcms) v1.07.rar

    1. 优化函数代码以正确识别新的WIN8.1、IE11等新系统、新浏览器。 2. 第三方模块升级。解决ie8下插入多张远程图片之后,dialog假死。 3. 增加标准版首页和移动版首页样板供依葫芦画瓢。   【1.03版升级日志】 1...

    配置好的傻瓜化小狼毫全拼+多种双拼+五笔86-98+笔画输入法v200312 - 17种方案

    如ā,拆为:横a,不足四码,末尾重复末编码或加z进行识别,即:横aa,或:横az。其他如?、‰等,小圈就借用字母O为编码。 末Z识别:前面已经谈及它的含义,它包含两个含义:末,即重复末编码;Z,即不足四码打Z...

    VoiceRecognize_TTS:js语音识别和TTS朗读基于谷歌API localstorage

    语音控制可扩展的Chrome语音命令工具(仅限Chrome浏览器,需要麦克风权限)。 语音命令使用Google的将语音转换为文本,然后使用易于编辑的关键字列表将搜索定向到正确的页面。 将新站点与关键字集成起来非常简单,...

    java开源包1

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

    java开源包11

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

    java开源包2

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

    java开源包3

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

    java开源包6

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

    java开源包5

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

Global site tag (gtag.js) - Google Analytics