動的に作成されたテーブルでも同じエラーが発生しました。入力に応じて、一部の行が表示されたり、表示されなかったりしました。このような:
エラーは発生しません:
<table>
<tr>
<td> cell 1 in row 1 </td>
<td> cell 2 in row 1 </td>
</tr>
<tr>
<td colspan=2> one cell in row 2 </td>
</tr>
</table>
エラーは発生しません:
<table>
<tr>
<td> cell 1 in row 1 </td>
<td> cell 2 in row 1 </td>
</tr>
</table>
エラーの原因:
<table>
<tr>
<td colspan=2> one cell in what is now the only row </td>
</tr>
</table>
最初の行が表示されていないときに最後の例から colspan を削除するようにページをプログラムすると、エラーは消えました。このようなもの:
<?php if (first row with two cells is displayed) echo 'colspan=2'; ?>
これは論理的だと思います。セルが 1 つだけの colspan=2 は、私を訪ねてきた人に、交差点のない通りを右折するように指示し、直進すると信じているようなものです。彼らはしません。代わりに、そこにない何かを探してハングアップします。完全に正確なアナロジーではないかもしれませんが、愚かなブラウザーが、あると言っているのに存在しないものを探しているときに、表示エラーを作成することを想像できます。ブラウザは、コードの意味が自分の書いたものとは異なるかもしれないと「考える」ことを期待されるべきではありません。