由webdings引发的乱码问题

时间:2022-10-21 16:44:30

【经验总结】由webdings引发的乱码问题
-----by ami

前几天改版页面时,在firefox下浏览,看到的分页是这样:

由webdings引发的乱码问题

心想,肯定是写错了,于是就改成了如下形式:
由webdings引发的乱码问题

直到今天又用IE浏览了,结果发现IE下的分页有乱码,如下:
由webdings引发的乱码问题

这个分页代码是由一个java方法生成的,通过在jsp页面调用java方法来显示分页代码,如下:

<td colspan="6" class="xxx"><%=fun()%></td>

于是很自然的就把这个问题演变成了 java方法生成html代码产生的乱码问题,结果就从这方面

去找原因,花了一两个小时,乱码依旧存在,最后就暂时放弃了这个问题,转向于优化java方法的html代码,代码如下:

由webdings引发的乱码问题

由webdings引发的乱码问题

自我感觉以上的html代码有以下几处可以优化:

1.回车符"\r\n"可以省略

2.html代码最好全部保持小写

3.去掉javascript的language属性,它已经没有用,最好加上type="text/javascript"

4.js和html的属性可以用单引号,尤其在字符串中与其用多个转义还不如直接用单引号

5.不推荐使用font来控制字体样式,在html5中它已经完全被废弃

改完后重新发布,令人意想不到的是乱码不见了,最后一核查,问题出在这句话:

<font face="webdings">首页</font>

原来webdings是一种字体,它会把一些数字和英文字母有规律的转换成一些特殊的符号,

遇到汉字就会变成乱码,但是firefox不识别它。所以分页显示正常,IEchrome认识它

所以就变成了乱码。

经提醒,用IE浏览器浏览了改版前的页面,发现分页效果如下:

此时,恍然大悟,原来开发者是想通过webdings字体来转变一些字符,从而达到上面的效果。

很可惜不兼容firefox,而作者偏偏又是firefox的粉丝,并且又不认识webdings,所以没有领

悟到开发者的意思,心里还埋怨,干嘛用数字来表示上下页和首尾页呢,失误呀,很自然就

改成了汉字,从而引发了一场奇怪的乱码。

总结:

1.在开发过程中,如果使用了生僻的语句或者有不兼容的地方,请务必加注释

2.在改版过程中,如果在某个浏览器下发现了奇怪的问题,最好多用几个浏览器测测


本文原创自无线技术运营空间: http://wireless.qzone.qq.com 及 http://blog.csdn.net/wireless_tech (专注无线技术运营——无线技术(操作系统/数据库/WEB前端/负载均衡/系统容灾/系统安全/短信接入/WAP接入/3G等)、无线业务运营、无线开放平台、统计分析(用户行为分析/数据挖掘)、CP合作,联系我们:1780551083@qq.com)