欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

utf-8 网页不显示+utf-8网页乱码的通用解决方法

程序员文章站 2022-08-05 23:45:35
在windows操作系统上使用ie作为浏览器时。常常会发生这样的问题:在浏览使用utf-8编码的网页时,浏览器无法自动侦测(即没有设定“自动选择”编码格式时)该页面所用的编...
在windows操作系统上使用ie作为浏览器时。常常会发生这样的问题:在浏览使用utf-8编码的网页时,浏览器无法自动侦测(即没有设定“自动选择”编码格式时)该页面所用的编码。
即使网页已经声明过编码格式:

<meta http-equiv="content-type" content="text/html; charset=utf-8" />

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

如果使用的是mozilla、mozilla 浏览器、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>之前。

-------------------------------------

=====================

utf-8网页乱码问题解决:
<%@codepage="65001"%>
< http-equiv="content-type" content="text/html; charset=utf-8">
一个也不能少
另外,文件要存为utf-8格式的
还有,程序不能出错,嘿嘿
要是有错误的程序,那么刚打开的时候正常的,刷新了就乱码了
这里说的出错时不会使整个页面不显示的出错。
1,<%@codepage="65001"%>
2,< http-equiv="content-type" content="text/html; charset=utf-8">
3,session.codepage = 65001
4,文件存成 utf-8
我来说说吧,这个我比较有经验,呵呵


2,< http-equiv="content-type" content="text/html; charset=utf-8">
=======================================
这条比较重要,也比较常见,这个决定了浏览者浏览器选择哪一种内码来访问你的网页。

4,文件存成 utf-8
如果你用中文输入法,网页里面出现中文,这一条就比较重要了.因为我们用普通输入法输入的文字不是utf格式的,所以要重新保存成 utf-8格式。

所有从数据库里读的中文字都是乱码
=====================
1,<%@codepage="65001"%>
出现这种事情,请加上这句话,其实数据库跟内码没什么关系,关键是asp程序用什么内码去传输你的数据,加上这句话,就强制asp用utf来传输数据。
尝试在<%@codepage="65001"%>下加一行:
<%session.codepage=65001%>

utf-8 网页不显示+utf-8网页乱码的问题一般就可以解决了