gpt4 book ai didi

html - 收缩以适合菜单项 - 第一项增长

转载 作者:技术小花猫 更新时间:2023-10-29 12:14:26 32 4
gpt4 key购买 nike

假设我有一个预先指定宽度的菜单。

我希望每个菜单项都缩小以适合其内容,但一个除外,它会填满菜单中的剩余空间。

像这样:


                                                       Fill | item | item | item

到目前为止,我最接近实现此效果的方法是在每个菜单项的 css 代码中使用 display:table-cell。但问题是,除非我为元素定义宽度,否则它们都会扩展以在表格中占据相同的宽度。


      Fill      |      item      |      item      |      item      |      item

有没有办法让元素空间缩小以适应元素,并让填充元素填满 div 的其余部分?

最佳答案

对于那些想用表格来做的人,你可以给第一个“td”一个类并将它的宽度设置得离谱,然后它会插入并强制其他列尽可能地缩小。它之所以有效,是因为表格的展开宽度不能超过它们设置的宽度。

例如:

<!DOCTYPE html>
<html>
<head>
<style type="text/css">
table td {
border:solid 1px #000;
}
table td.fill {
width:9999em;
text-align:right;
}
table {
width:300px;
border-collapse:collapse;
}
</style>
</head>
<body>
<table>
<tr><td class="fill">Fill</td><td>item</td><td>item</td><td>item</td></tr>
</table>
</body>
</html>

在仅适用于 Firefox 和 IE 的旧示例中,我将“td”宽度设置为 0,然后它尽可能地缩小了列。

您可以通过将 td 宽度设置为较小的值来将所有列设置为收缩以适合,例如当您未设置表格宽度时为 1px,这在 Chrome、Firefox 和 IE 中有效。

table td {
width:1px;
}

您可能还想设置 white-space:nowrap;,否则所有的单词都会换行,或者给 td 一些更大的 width

关于html - 收缩以适合菜单项 - 第一项增长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4582631/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com