我的布局类似于:

<div>
    <table>
    </table>
</div>

我希望div只扩展到表的宽度。


当前回答

只需将样式放入CSS文件

div { 
    width: fit-content; 
}

其他回答

这里有一个工作演示-

.浮动框{显示:-moz内联堆栈;显示:内联块;宽度:配合内容;高度:配合内容;宽度:150px;高度:75px;边距:10px;边框:3px实心#73AD21;}<h2>The Way正在使用内联块</h2>CSS中还添加了支持元素。<div><div class=“floating box”>浮动框</div><div class=“floating box”>浮动框</div><div class=“floating box”>浮动框</div><div class=“floating box”>浮动框</div><div class=“floating box”>浮动框</div><div class=“floating box”>浮动框</div><div class=“floating box”>浮动框</div><div class=“floating box”>浮动框</div></div>

您需要一个具有CSS所称的收缩以适应宽度的块元素,而规范并没有提供一种获得这种东西的好方法。在CSS2中,缩小尺寸并不是一个目标,而是指处理浏览器“必须”凭空获得宽度的情况。这些情况包括:

浮动绝对定位元件内联块元素表元素

当没有指定宽度时。我听说他们想在CSS3中添加你想要的内容。现在,就用上面的一个吧。

不直接曝光该功能的决定可能看起来很奇怪,但有充分的理由。它很贵。缩小到适合意味着至少设置两次格式:在知道元素的宽度之前,不能开始设置元素的格式,并且不能计算整个内容的宽度。此外,人们不需要像想象的那样经常收缩以适应元素。为什么你的桌子周围需要额外的div?也许你只需要表格标题。

仅仅

<div style="display: inline;">
    <table>
    </table>
</div>

好的,在很多情况下,您甚至不需要做任何事情,因为默认情况下,div的高度和宽度都是自动的,但如果不是这样,应用内联块显示将对您有效。。。看看我为你创建的代码,它会做你想要做的事情:

第二部分{显示:内联块;}<div><表><tr><td>Lorem ipsum dolor坐amet,consectetur adipiscing elit。Morbi ultrices feugiat massa sed laoreet。Maecenas et magna egestas,facilisis purus quis,前庭nibh</标准差><td>Nunc auctor aliquam est ac viverra公司。Sed enim nisi,feugiat Sed accumsan eu,convalis eget felis。Pellentesque consequat eu leo nec pharetra。直径为</td><td>Lorem ipsum dolor坐amet,consectetur adipiscing elit。Morbi ultrices feugiat massa sed laoreet。Maecenas et magna egestas,facilisis purus quis,前庭nibh</标准差></tr></table></div>

display: -moz-inline-stack;
display: inline-block;
zoom: 1;
*display: inline;

Foo Hack–对内联块样式的跨浏览器支持(2007-11-19)。