HTML验证错误:表格行没有单元格开头

时间:2014-09-30 09:37:17

标签: html html5

<table border="1">
  <tr>
    <td rowspan="4">A</td>
    <td colspan="5">B</td>
  </tr>
  <tr>
    <td colspan="3">E</td>
    <td rowspan="2">F</td>
    <td rowspan="4">C</td>
  </tr>
  <tr>
    <td rowspan="2">G</td>
    <td>
      <table border="1">
        <tr>
          <td>1</td><td>2</td>
        </tr>
        <tr>
          <td>3</td><td>4</td>
        </tr>
      </table>
    </td>
    <td>
      <table border="1">
        <tr>
          <td>1</td><td>2</td>
        </tr>
        <tr>
          <td>3</td><td>4</td>
        </tr>
      </table>
    </td>
  </tr>
  <tr>
    <td colspan="3">H</td>
  </tr>
  <tr>
    <td colspan="5">D</td>
  </tr>
</table>

W3C Validator抱怨说:&#34;由元素td建立的表格列6没有从其开始的单元格。&#34;即使是细胞&#39; C&#39;应该从第6列开始。它显示正确,所以它可能是验证器中的错误吗?

1 个答案:

答案 0 :(得分:0)

这似乎是验证器中的错误。它以某种方式无法正确分析表格。

证明这可能需要基于HTML5 table model进行详细分析,但如果您只是在<col><col><col><col><col><col>标记之后添加<table ...>,则标记会通过验证 - 可能是因为它告诉浏览器有六列,这有助于验证器正确识别C单元的状态。当我添加col元素以便在列上设置背景颜色以更好地可视化情况时,我意外地注意到了这一点。

考虑发布bug report并在此处报告是否会有进展。