【发布时间】:2012-08-13 03:10:26
【问题描述】:
我有一些文件需要包含在几个页面中,所以我使用类似
<html>
<head>
<title>This is a webpage</title>
</head>
<body>
<div>Hello, this is a webpage</div>
<?php include("header.html");?>
<div>Some more text.</div>
<?php include("BlockToInclude.php");?>
<div>Even more text.</div>
<?php include("footer.html");?>
</body>
</html>
问题在于,对于每个include();,我在包含的内容之前都会得到一个 20 像素的空白空间。我通过将第一个包含块的边距减少 20px 来解决这个问题,但我更喜欢避免这个空间而不是补偿它的东西。另外,我是 PHP 新手,这是正常行为还是我应该寻找我做错了什么?
更新:我检查了生成的代码,在我调用insert(); 函数的每个地方,它都出现了一个不在原始文件中的陌生字符(也不是调用者或包含的)。我将代码从 Firefox 代码查看器(不可见)复制到我的编辑器(Windows 中的 RJ TextEd),它在框中显示为问号;如果我将此代码保存为静态 html 它呈现相同,但如果我删除这些字符,则空白消失。有什么想法吗?
【问题讨论】:
-
这是您的 html/css 的问题,与 php 无关。查看生成的 html,这就是您的问题所在。
-
查看你包含的文件,看看是否有空格,然后确定
-
这肯定是您的 html 页面的问题。 html页面中的内容必须创建20像素的空白空间,我认为你应该使用firbug类型的工具来调试。 php include 函数完全没有问题。
-
我检查了生成的代码,在我调用
insert();函数的每个地方,它都出现了一个不在原始文件中的陌生字符(也不是调用者或包含的文件)。我将代码从 Firefox 代码查看器(不可见)复制到我的编辑器(Windows 中的 RJ TextEd),它在框中显示为问号;如果我将此代码保存为静态 html 它呈现相同,但如果我删除这些字符,则空白消失。有什么想法吗?