【发布时间】:2021-07-10 12:28:39
【问题描述】:
假设我有一个具有固定宽度的容器元素。我有一个带有显示内联块的内容元素,可以包含一些文本。此文本可能太大,以至于必须填充多行。这样做的问题是,多行文本的默认行为是将元素增加到父元素的完整宽度。
想象一下下面的例子:
HTML:
<div class="container">
<div class="content">
Firstreallongword11 Secondalsolongword22 Thirdwordthatisconsiderablylonger
</div>
</div>
CSS:
.container {
width: 260px;
border: solid blue 1px;
}
.content {
display: inline-block;
background: red;
}
因为这些是长词,它们将被放置在多行中。我对.content 元素的期望是,它将增长到单行上最大单词的最大宽度。
但是正如你所看到的,因为它由多行组成,所以元素会增长到.container 的最大宽度。
我想要实现的是,.content 获得单行上最大项目的宽度,就像使用单个 lin 一样:
有什么方法可以用纯 css/html 实现吗?
【问题讨论】:
-
链接副本中提到的
display: table-caption方法应该可以实现这一点。 jsfiddle.net/9axvh6ey