【发布时间】:2013-12-28 05:56:02
【问题描述】:
我用 HTML(标题)和 PHP(正文)创建的表格上方有一个神秘的空白。当 PHP 用于正文时,我不想要的随机空格出现在表格上方。当我用 PHP 替换 HTML 时,空白消失了> 不幸的是,因为我从数据库显示流动信息,我不能使用 HTML 将每一行硬编码到表中。
这个随机空白是从哪里来的,我该如何摆脱它?
我听说标签中有额外的空白,或者标签中没有的文本会导致问题,但是当我查看页面源时,所有信息都正确回显,标签或随机文本中没有额外的空白。
回显的代码/页面源(空白单元格是故意的):
<tr><td>Name</td><td>2</td><td class="hasClass">Class</td><td class="hasClass">Class</td><td></td><td></td><td>0</td><td>15</td><td>No</td></tr>`
HTML 源代码:
<table>
<tr><th>Name</th><th>No. of Parts</th><th>1<sup>st</sup> Block</th><th>2<sup>nd</sup> Block</th><th>3<sup>rd</sup> Block</th><th>4<sup>th</sup>Block</th><th>No. Enrolled</th><th>Limit</th><th>Requried</th></tr>
<tbody><?php include 'bin/table.php';?></tbody>
</table>
PHP (table.php) 假设成功连接到数据库:
while ($row = $result->fetch_row()) {
echo '<tr><td>'.$row[1].'</td><td>'.$row[2].'</td>';
if ($row[3] == 1) {
echo '<td class="hasClass">Class</td>';
} else {
echo '<td></td>';
}
if ($row[4] == 1) {
echo '<td class="hasClass">Class</td>';
} else {
echo '<td></td>';
}
if($row[5] == 1) {
echo '<td class="hasClass">Class</td>';
}
else {
echo '<td></td>';
}
if ($row[6] == 1) {
echo '<td class="hasClass">Class</td>';
} else {
echo '<td></td>';
}
if ($row[7] >= $row[8]) {
echo '<td style="color:white; background-color:red;">FULL</td>';
} else {
echo '<td>'.$row[7].'</td>';
}
if ($row[7] >= $row[8]) {
echo '<td style="color:white; background-color:red;">'.$row[8].'</td>';
} else {
echo '<td>'.$row[8].'</td>';
}
if ($row[9] == 1) {
echo '<td>Yes</td>';
} else {
echo '<td>No</td>';
}
echo '</tr>';
}
谢谢!
【问题讨论】:
-
能否提供截图?
-
还要检查你的 CSS 是否有填充、边距
-
您使用的是哪个文本编辑器?
-
能否给我们手头的问题截图?
-
我无法添加屏幕截图,因为我没有足够的“声望点”。我检查了我的 CSS,当我去掉填充/边距时没有任何改变。我能够摆脱它的唯一方法是删除 PHP。我正在使用 Dreamweaver (CS4)。
标签: php html removing-whitespace