IE7:如何使TD浮动?(IE7: How to make TD float?)

2019-07-29 00:41发布

我想的一组<td> s至左浮动在IE7。 他们应该突破到下一行,如果窗口太小。

CSS

table {
  width: 100%;
}
td {
  border: 1px solid red;
}
tr.f td {
  width: 500px;
  float: left;
}

HTML:

<table>
  <tr class="f">
    <td>1</td>
    <td>2</td>
    <td>3</td>
  </tr>
</table>

这个工作在IE8和Firefox,但不是在IE7。 我究竟做错了什么?

页面呈现模式是“IE7(怪癖)”或“IE7(标准)”。 我与IE8尝试,虽然,相信IE7渲染模式是它说。 “IE8兼容性视图”失败为好,只有“IE8标准”得到它的权利。

Answer 1:

我不认为这是可能的,你想要的方式。

当您将浮子TD元素[在FF / IE8 [他们成为匿名表对象为按照CSS 2.1规范。 从本质上讲,他们不再表格单元格,而这些匿名对象都有一个显示类型为浮动。

IE7不遵循规范的这一部分,实际上,电池的显示类型不能在所有的改变,并与表单元格的显示类型不能浮动对象。

如果你绝对需要使用一个表(而不是UL /李),你可以做这样的事情呢?

<style type="text/css" media="screen">`
    table {
        width: 100%;
    }
    .f {
        border: 1px solid red;
        float: left;
        height: 10px;
        width: 500px;
    }
</style>

<table summary="yes">
    <tr><td>
    <span class="f">1</span>
    <span class="f">2</span>
    <span class="f">3</span>
  </td></tr>
</table>


Answer 2:

我最好的猜测:IE7及以下有更严格的表款,不允许你改变表元素的流。



文章来源: IE7: How to make TD float?