为什么IE不用流体图像子对象表宽度

时间:2012-02-05 05:57:54

标签: html css internet-explorer html-table fluid-layout

考虑the following code

HTML:

<table>
    <tr>
       <td><img src="http://watduck.jpg.to" /></td>
    </tr>
</table>

CSS:

table { width: 10% }
img { max-width: 100% }

图像显然应该是窗口宽度的十分之一,这正是除IE之外的每个浏览器中的图像,它只是回落到原始大小。

然而,consider this

HTML:

<div><img src="http://watduck.jpg.to" /></div>

CSS:

div { width: 10% }
img { max-width: 100% }

IE确实正确,并显示在窗口宽度的第10位。


所以,问题是:导致此行为的原因,以及可以采取哪些措施来强制IE遵守表格的宽度?

在IE8&amp; IE9(不关心IE7及以下)。

1 个答案:

答案 0 :(得分:26)

如果您在表css中指定table-layout: fixed;,则可以使用。

关于表格布局的标准似乎有一些矛盾的术语。特别是table-layout: auto;说:

  

列宽由单元格中最宽的牢不可破的内容设置

由于图像内容不可破解,因此将单元格的宽度设置为内容的大小。最大宽度似乎被它覆盖。