首页 > 经验记录 > UTF-8导致页面空白

UTF-8导致页面空白

问题描述

今天博客做了些改动,在本地调试时没注意看版式,上传到服务器后发现在所有页面的顶部出现了一块空白区域,如下图:UTF8导致-顶部空白

注意,上图顶部有大概10px的空白,看起来非常难看。

问题分析

一开始我以为不小心改了css文件,在body顶部加了margin,仔细检查代码和css文件之后排除了这种可能性。通过将更新后的代码和老版本的代码比较后,彻底排除了因为编码引起这种问题的可能,主要因为代码改的很少,用代码比较的方式可以分析出来,如果代码量比较大的话,不建议用这种方式。(注意:代码更改前做备份非常重要,如果能用svn来管理就更完美了)。这个问题至此很难再分析下去了,只能google一把和百度一下,但是依然没有找到任何解决方案(后来知道查询时没选准关键字)。

这个问题至此已经陷入死局,只能前前后后仔细的回忆到底改了哪些东西,在代码的改动之外在操作方面有没有做过改动。后来想起,因为wordpress默认的编码时utf-8的,输入中文经常被转换成乱码,为了避免输入的中文变成乱码,我把所有的PHP文件都特地另存为utf-8了,用的是windows自带的记事本。此时基本确定,网页出现空白的问题又是编码惹的祸。

解决方案

用ultraedit打开header.php文件,再次另存为utf-8格式,不过这时一定要选择 “utf-8 无 BOM”。在ultraedit中,有一个选项可以控制保存utf-8文件时是否写入 BOM,如下图:将图中标记选项清除,可以避免在保存utf-8文件时写入BOM文件头标记。ULTRAEDIT-BOM

 

在另存文件时,也要选择合适的格式,如下图: 保存文件时,选择标记的格式

ULTRAEDIT-保存

通过ultraedit再次转换后, 顶部出现空白的问题得到圆满解决。在用wordpress搭建博客的时候,编码引起的问题非常多,以后再出现乱码、页面空白或者其它乱七八糟的问题首页要考虑的就是是否编码出了问题。

  1. 2011年4月24日17:00 | #1

    我也遇到这个问题,这个办法解决不了问题,后来尝试更改了admin-bar.php这个文件才成功。

  1. 2010年3月12日21:07 | #1

注意:
评论者允许使用'@user:'的方式将自己的评论通知另外评论者。
例如, ABC是本文的评论者之一,则使用'@ABC:'(不包括单引号)将会自动将您的评论发送给ABC。
user必须和评论者名相匹配,区分大小写。

SEO Powered by Platinum SEO from Techblissonline