web-dev-qa-db-ja.com

IE8はtd幅を無視し、IE7で動作します

次のようなテーブルがあります。

<table width="100%">
<tr id="header">
 <td colspan="2"></td>
</tr>
<tr id="center">
 <td id="left" style="width: 201px"></td>
 <td id="mainpage" style="width: 100%"></td>
</tr>
</table>

IE8以外のすべてのブラウザ(IE7を含む)では、「左」のtdで問題ありません。 IE8では、メインページのコンテンツに応じて幅を超えています。

スクリーンショットをいくつか投稿しますが、これが私の最初の投稿です。

何かアイデアはありますか?

21
Bill

それ width: 100%2番目の列が正しく表示されません-2番目の列を残りの使用可能なスペースに拡張しようとしている場合は、それをまったく必要としないので、削除できます。また、これをテーブルに追加します。

table-layout: fixed;

幅が守られていることを確認します。

完全なコード:

<table style="width: 100%; table-layout: fixed;">
<colgroup>
    <col style="width: 201px">
</colgroup>
<tr id="header">
    <td colspan="2"></td>
</tr>
<tr id="center">
    <td id="left"></td>
    <td id="mainpage"></td>
</tr>
</table>
41
Razor

さて、メインページ内に固定幅の空のテーブルを追加することで、問題は多少修正されました。

そうすれば、私は実際には、IEの無視する態度に関係なく最小幅を設定しています。すべての答えをありがとう。

0
Bill

100%でよろしいですか

<table width="100%">

テーブルはその親要素と同じ大きさになります。テーブルに固定幅を設定する必要があるかもしれません。

<table width="600">
0
Sarfraz