首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >网站头部出现白条或空白行解决方案

网站头部出现白条或空白行解决方案

作者头像
Savalone
发布2020-02-11 12:35:48
1.4K0
发布2020-02-11 12:35:48
举报
文章被收录于专栏:Savalone's BlogSavalone's Blog

修改 dedeCMS 模板后生成网站发现页面头部莫名出现一条空白行,甚至引起了式样的错乱。查看模版代码并没有任何异常,用 firebug 查看发现问题主要是:模板文件生成 html 文件之后会在 body 开头处加入一个空白子符 &#65279 ,导致页面头部会出现一个空白行。

接到" &#65279 字符"问题后,我也是百思不得其解,首先我怀疑是代码不清洁的问题,仔仔细细检查了整个模板,发现代码没有冗余的地方;后来也有想到不可见控制符的问题,但是找来找去也没发现;最后就用 Editplus 编辑器重新打开模板检查,当我重新另存为的时候发现原来页面的编码是 UTF-8 + BOM。

这种编码方式一般会在 windows 操作系统中出现,比如 WINDOWS 自带的记事本等软件,在保存一个以 UTF-8 编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以 UTF-8 编码。对于一般的文件,这样并不会产生什么麻烦。但对于 PHP 来说,BOM 是个大麻烦。因为 PHP并 不会忽略BOM,所以在读取、包含或者引用这些文件时,会把 BOM 作为该文件开头正文的一部分。根据嵌入式语言的特点,这串字符将被直接执行(显示)出来。由此造成即使页面的 top padding 设置为 0,也无法让整个网页紧贴浏览器顶部,因为在 html 一开头有这 3 个隐藏字符  !

解决办法:

遇到这种问题的解决方法就是用 Editplus 2.12 版本以上编辑器或者 EmEditor 或者 UltraEdit(需要取消'添加BOM'的相关选项)或者 Dreamweaver(需要取消'添加BOM'的相关选项)重新保存一下 utf-8 格式的文档!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年06月28日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档