扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
一直以来我们谈到网站前端兼容性的时候,想到的必定就是跨浏览器的兼容性,比如我们经常说我的网站在兼容IE、Chrome、火狐等主流浏览器,碉堡了。而很少人关注编码的问题,除非是出了什么问题的时候,然后别人说是编码问题,然后就跟着人家一步步去做,最后根本不会关注编码的问题。
昨天有一个有可能(我好想把这个词改成一定啊)成为客户的用户发来一个参考网站,我打开网站就惊呆了,完全不堪入目啊。
当然我非常详细这个用户的审美,如果他也是看到这个样子必定不会把它作为参考,也就是在他那里他看到的必定是正常的页面,应该就是这样的:
那么为什么会出现这样的情况呢?其实这就是属于我们这里要说编码兼容性问题,因为在很多中文用户的浏览器中默认的编码是GBK,而也有一些不是这样的或者改成不是这样的。比如我个人就是把默认编码改成UTF-8的,于是就出现了上面的问题。难道就没有办法统一起来么?也就是说我写的一个页面,不管是GBK还是UTF-8还是的浏览器访问我的网站都正常呢?
显然是有办法的,懂前端的童鞋应该都知道有一段代码可以用来置顶的。
<meta http-equiv="Content-Type" content="text/html; charset=编码" />
比如指定为utf-8
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
而上面这个网站全站是GBK的,本来应该是需要指定为GBK,告诉浏览器,“嘿,哥们,哥这里的是GBK,麻烦你切换写模式哈”,浏览器会说:“好的,马上切换”。而这个网站除了首页其他都正常,我看了下他的前端代码,发现他的首页编码指定写是写了,不过写错了,醉了。
其实编码问题在开发过程中稍不注意就会出问题,不管是前端还是后端、还是数据库都会存在这样的问题;当然有的问题不是初始开发者造成的,而是后面非专业的用户修改造成的。比如我有的客户可能自己稍微照葫芦画瓢能改改代码,但他直接用记事本修改,结果就可能造成编码问题,比如很多遇到的打开网站后顶部莫名其妙的多了一条空白,查看代码发现出现了一个多余的字符串,这就是编辑器问题造成给凭空加上了BOM头的问题,这样的例子太多太多。这里举这么一个例子,希望大家重视这块,开发者就细心一点儿,而使用者就在自己不太懂的前提下就别乱改了哦。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流