0

我需要一个固定宽度的表格,其中的列具有可变宽度,因此取决于它们的内容,但这些内容之间的水平距离是相同的。

这就是我得到的:

-----------------Table Width-----------------
|----Long Content----|---Content---|--More--|

这就是我要的:

----------------Table Width------------------
|---Long Content---|---Content---|---More---|

请注意内容单元格中减号的计数!当您使用屏幕截图测量列内容之间的空间时,您会注意到它们并不总是完全相同。

这是我的标记:

<ul>
    <li>Long Content</li>
    <li>Content</li>
    <li>More</li>
</ul>

这是我不工作的样式表:

ul {
    display: table;
    width: 600px;
}

li {
    display: table-cell;
    text-align: center;
    border: solid 1px #000;
}

这是我的 jsFiddle:http: //jsfiddle.net/ATwqk/12/。我怎样才能得到想要的结果?

4

3 回答 3

0

您需要将左右填充属性设置为 2.5em。但是,这仅在没有中断或每个单元格都中断其内容的情况下才有效。

ul {
    display: table;
    width: 300px;
}

li {
    display: table-cell;
    text-align: center;
    border: solid 1px #000;
    padding: 0 2.5em;
}
于 2013-08-22T15:05:07.707 回答
0

如果我理解正确,您可以尝试在 ul 周围包裹一个固定宽度的 div。然后宽度:100%;上 ul 和 width:50% 上 li

http://jsfiddle.net/ATwqk/3/

#wrapper{
        width:500px;
    }
    ul {
        display: table;
        width: 100%;
    }

    li {
        display: table-cell;
        text-align: center;
        border: solid 1px #000;
        width:50%
    }

<div id="wrapper">
<ul>
    <li>Long Contentdsdddddddddddd</li>
    <li>Content</li>
</ul>
</div>
于 2013-08-22T15:07:24.343 回答
0

在你的 ul 标签上试试这个。这应该完全符合您的要求。

ul
{
    display: flex;
    justify-content: space-between;
    width: 600px;
}

更新了jsfiddle:

http://jsfiddle.net/ATwqk/19/

于 2015-08-07T09:06:43.573 回答