您的位置:首页 > 其它

UTF-8不能自动选择字符编码(iframe),页面输出空白

2011-05-22 23:49 295 查看
同事调试页面的时候发现如果IE没有选择自动编码,那么utf-8的有些页面会在IE下显示空白,即使你习惯性的加入了:<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />

产生原因:
utf-8用3个字节表示一个汉字,而普通的gb2312或big5是2个。而恰巧IE在解析网页编码时以HTML内的标签为优先,然后再会解析Header内的内容,但FF等其他浏览器相反。正因为这样,当Title里有奇数个全角字符时,IE把utf-8当作两个字节解析时出现半个汉字的情况,这时该半个汉字会和</title>的<结合成一个乱码字,导致IE无法读完<title>部分,使整个页面为空白输出。

解决方案:
实际上很简单,把<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />放在<title></title>的前面即可。

他们如何:
Google:


<meta http-equiv=content-type content=”text/html; charset=UTF-8″>
<title>这里是中文 – Google 搜索</title>


Yahoo:


<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>
<title>这里是中文_雅虎网页搜索</title>


转自:http://blog.52news.com/article.asp?id=1481
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: