首页 PHP PHP网站顶部添加include文件后不居中出现一空行

PHP网站顶部添加include文件后不居中出现一空行

作者:胡同里的砖头 围观群众:60 更新于:2021-04-08

1、把include文件放在head里,不要放在html或doctype上面,这样可以解决居中的问题,空白行的话可以用<div style="display:none"></div>包含include文件,但这不是根本解决的办法。

2、根本解决的办法是,用DW打开包含文件,修改工具栏 --> 页面属性 -> 标题编码 -> 包括Unicode 签名(BOM) 前面的复选框去掉
这样的话,不管哪里包含都不会出现这样的问题。当然也可以用其他编辑器去掉。

查找原因:

分析原因:
 文件以UTF-8编码保存时,有两种情情况:带Unicode签名(BOM)和不带Unicode签名。BOM信息是文件开头的一串隐藏的字符,用于让某些编辑器识别这是个UTF-8编码的文件。 

但对于 PHP来说,PHP在设计时就没有考虑BOM的问题,不会忽略UTF-8编码的文件开头BOM的那三个字符,会把BOM作为该文件开头正文的一部分。由于必须在<?或者<?php后面的代码才会作为PHP代码执行,所以将会造成在页面上输出这三个字符,显示效果就要看浏览器了,一般是一个空行或是一个乱码。由于在html一开头有这3个字符的存在,即使页面的 top padding 设置为0,也无法让整个网页紧贴浏览器顶部。由于受COOKIE送出机制的限制,在这些文件开头已经有BOM的文件中,COOKIE无法送出(因为在 COOKIE送出前PHP已经送出了文件头),所以登入和登出功能失效。一切依赖COOKIE、SESSION实现的功能全部无效。 

  • 本文标题: PHP网站顶部添加include文件后不居中出现一空行
  • 文章分类:【PHP】
  • 非特殊说明,本文版权归【胡同里的砖头】个人博客 所有,转载请注明出处.
站点声明:
1、本站【胡同里的砖头】个人博客,借鉴网上一些博客模板,取其各优点模块自行拼装开发,本博客开发纯属个人爱好。
2、所有笔记提供给广大用户交流使用,可转载,可复制,纯个人开发所遇问题锦集记录使用
Copyright © bysjdq.com All Rights Reserved. 备案号:苏ICP备2021046038