1

私の問題は非常に簡単に示されます:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<body>
<table border="1">
    <colgroup>
        <col width="75">
        <col width="75">
        <col width="75">
        <col width="75">
    </colgroup>
    <tr>
        <td colspan="2">Cells 1 + 2</td>
        <td colspan="2">Cells 3 + 4</td>
    </tr>
</table>
</body>
</html>

Firefox (15.0.1) は 2 つのセルを持つテーブルを作成しますが、それぞれ 150 ピクセル...

Firefix での結果

... Internet Explorer (9.0.8112.16421) は、幅に 3 つの列のみを使用します。

IE での結果

4 番目の列に別の列にまたがらないセルを含む行がテーブルに含まれるとすぐに、幅の定義が期待どおりに機能します。

私はIEがそれ自体に「ああ、まあ、3番目の列の後ろに他の列はありません-列の定義を無視しましょう」と推測します。しかし、この問題を回避する方法がわかりません。助言がありますか?そしてもちろん、テレイントロスペクションを超えた説明も大歓迎です:)

この例の意味に関する議論を避けるために: 列は、後者のセルが個別に (少なくとも 1 回) 使用されるかどうかを知らない関数によって自動的に定義されます。

4

1 に答える 1

0

TABLE 自体の幅を設定します。

<table border="1" width="300">
于 2012-09-21T20:18:36.983 に答える