固定レイアウト表(table-layout:fixed;)では列幅の指定値の合計が表要素の幅の指定値より大きい場合でも、表全体の幅は表要素のwidthプロパティの値が適用されてしまう。
- Category: Internet Explorer, Mac
- Tag: table, width
例示
<table border="2" style="table-layout:fixed; width:200px;">
<tr>
<td style="width:200px;">200px</td>
<td style="width:100px;">100px</td>
</tr>
</table>
<table border="2" style="table-layout:fixed; width:200px;">
<tr>
<td style="width:100%;">100%</td>
<td style="width:50%;">50%</td>
</tr>
</table>
| 200px | 100px |
| 100% | 50% |
どちらの表も1列目の幅が200px、2列目の幅が100pxになるはずですが、MacIEではどちらの表も全体の幅が200pxになるそうです。
報告書き込み
table {
width: 300px;
table-layout: fixed;
}
td {
background: red;
}
<table>
<col style="width: 420px"><col style="width: 180px">
<tr><td>x</td><td>y</td></tr>
</table>
<table>
<col style="width: 140%"><col style="width: 60%">
<tr><td>x</td><td>y</td></tr>
</table>
<table>
<col style="width: 70%"><col style="width: 30%">
<tr><td>x</td><td>y</td></tr>
</table>
【MacIE5】
列幅合計が表のwidthを超える場合に、列が指定幅にならない。
>>36 のソースを表示すると、全て300px幅の表になって
しまいます。列幅合計が表のwidthより大きくても、表の
widthの方が優先されるようです。


