1

我的 HTML 中有下表。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<style type="text/css">
    table, td, tr, th{
        border:1px;
    }

    .onepx{
        width:1px;
    }
</style>


<div style="max-width:700px;">
    <table>
        <tr><td colspan="2">this is a loooooooooooooooong text</td></tr>
        <tr><td class="onepx">a:</td><td>b</td></tr>
        <tr><td class="onepx">c:</td><td>d</td></tr>
    </table>
<div>

我希望第二行和第三行中的第一列宽度恰好适合内容长度(这就是我将 width="1px" 放在那里的原因)。同时,我希望表格宽度适合表格中最长内容的长度(即第一行),而不是跨越其边界 div 的最大宽度。

它在 Firefox 和 IE9 中工作,兼容模式关闭,如下所示。

火狐

但是,在 IE 9 兼容模式下,它无法按预期工作,如图所示。

即兼容模式

由于某种原因,我无法在 IE9 中关闭兼容模式。那么有没有办法像在兼容模式下一样设置表格的样式?

提前致谢。

PS。我问了一个类似的问题,但没有强调 IE9 兼容模式。这个问题是在从上一个问题中得到信息后提出的。我不确定是否应该将此问题合并到上一个问题中,因为有新要求。让我知道是否有任何建议。

4

1 回答 1

2

因此,查看您提供的内容,如果这是在您的文件中设置的方式,那么您正在以严格模式工作并且缺少开头和 .

至于更改IE9模式,选择F12可以更改浏览器和文档模式。

另外,不要忘记添加<meta http-equiv="X-UA-Compatible" content="IE=9" >到您的头上。

表格样式应移至 CSS。

你也可以试试:

桌子:

<table class="fixed">
    <col width="10px" />
    <tr>
        <td>text</td>
    </tr>
</table>

CSS:

table.fixed { table-layout: fixed; }
table.fixed td { overflow: hidden; }
于 2011-11-29T21:00:59.763 回答