导致验证问题

时间:2013-10-13 10:27:31

标签: html validation html-table

我有以下代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<table>
    <tbody>
    <?php echo $header; ?>
    <?php
    for ($i=1; $i<=14; $i++)
      {
      echo "
            <tr id=\"rq". $i. "\">
            <td class='qnum'>". $i . ".</td>
            <td class='qtext'>". $q[$i] . "</td>
            <td style='width:20px;'></td>";
      echo" <td colspan=2><div id='slider_". $i . "' class='shown' name='slider' style='width:374px;height:10px;display:block;background:white;border:1px solid #B3C6FF'></div></td>";

      echo" <td style='width:20px;'></td></tr>";
        }?>
    </tbody>
</table>

当我去验证代码时,我收到以下错误:

  

未完成的“tbody”的结束标记

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

您已经使用PHP编写了一个软件。当您运行该软件时,它将输出一些XHTML。

您需要验证XHTML,而不是PHP源代码。

tbody未完成,因为所有表行都是由PHP输出的。虽然PHP源代码中包含标记,但它们位于PI内部,因此不会被视为标记。

答案 1 :(得分:0)

确保您不验证PHP,而是通过PHP验证HTML代码生成的。此外,请确保PHP生成的代码有效,因为没有未关闭的标记,未封闭的引号。如果没有给我们PHP代码生成的确切HTML,就无法确定问题的确切解决方法,因为我们不知道$header的内容是什么,为您举个例子。因此,如果您需要更多信息,请编辑您的问题并添加生成的HTML代码,但我的建议应该足以让您修复错误。干杯!