[英]Header displaced after PHP implementation (UTF-8 BOM)
在我加入他们之前,我的公司有一个像样的网站,从那时起外包和不受影响。 加入后,我在空闲时间里一直在慢慢改进它。
本周我重写了所有页面上相同的标题/左栏/页脚,这样我就可以使用PHP包含它们,并且当我想要改变某些东西时(包括其他好处),避免逐个修复它们。
我不太熟悉.htaccess和PHP,但我真正改变的是:
AddType application/x-httpd-php5 .html .htm
<?xml version="1.0" encoding="UTF-8"?>
至:
<?php echo "<?xml version=\\"1.0\\" encoding=\\"UTF-8\\"?>\\n";?>
避免<?xml标记抛出PHP短标记错误
<?php include '_header.html';?>
在加载两个页面(PHP include和plain html)后查看源代码,它们看起来完全相同。 我没有更改任何CSS,所以他们使用相同的代码。
但由于某种原因,切换到PHP包含版本会在页面顶部添加一个空行。
这是当前(普通XHTML)版本: http : //www.akidc.co.jp/index.html新文件供参考:((删除过时的链接))(我无法更改.htaccess直到我一次上传所有新页面或<?xml标签会将它们全部错误,因此它会以.php的形式出现。)
我包含的头文件位于_header.html
请帮我解决差距^ _ ^
在源上运行差异,你会立即注意到这里发生了什么。
在PHP版本中,在<div id="header" ...>
之前有一个U + FEFF 。 这被浏览器解释为内容,因此它会尝试显示此内容。
要解决此问题,请确保所有源代码都以UTF-8格式存储。
顺便说一句,这是差异:
看到<feff>
?
现在,查看页面的元素。 这就是你以前的所作所为:
这就是你在PHP版本中得到的:
注意我突出显示的附加“”块?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.