A-A+

dedecms调用头部文件 dede:include时页面出现一行空白的解决方案

2015年01月25日 CMS 评论 1 条 阅读 2,039 次
守财鹿邀请码

最近制作模板的时候发现一些问题,当我在调用
{dede:include filename="header.htm"/} (网页头部),或者
{dede:include filename="footer.htm"/}(网页底部)标签时,
在生成的页面中,会出现一行空白,破坏了整个页面的布局,即使如何修改CSS也没有用,经过查找原因之后才发现问题的所在。原来我每次新建一个模版htm 文件时,喜欢新建一个记事本文件,再将其后缀名改成htm,然后用编辑器打开,另外我的编码是UTF-8,所以问题出现了。因为在WINDOWS下的记事 本中,默认是gb编码,在转码为以UTF-8编码时,会在文件最前面插入三个不可见的字符(_0xEF _0xBB _0xBF,即BOM——Byte Order Mark)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。由于在PHP中没有考虑BOM的问题,不会忽略UTF-8编码 的文件开头BOM的那三个字符,所以把它作为正文的一部分,将会造成在页面上输出这三个字符。显示效果一般是一个空行 或是一个乱码。由于在html一开头有这3个字符的存在,即使页面的 top padding 设置为0,也无法让整个网页紧贴浏览器顶部。
解决办法:

在Notepad++编辑器中,将文件转为UTF-8无BOM编码格式
dedecms调用头部文件 dede:include时页面出现一行空白的解决方案 或者在在Dreamweaver中点修改->页面属性->标题/编码->把包括 Unicode 签名(BOM)的勾取消。

dedecms调用头部文件 dede:include时页面出现一行空白的解决方案

修改完后,上传FTP,后台重新生成文档就ok了;

打赏

1 条留言  访客:0 条  博主:1 条

  1. web小斌

    额,原来是这样,谢谢分享

给我留言

Copyright © WEB小工匠 保留所有权利.   渝ICP备15008469号

渝公网安备 50023602000173号

用户登录

分享到: