【发布时间】:2020-12-23 18:04:18
【问题描述】:
我想在不超过文本最宽点的 inline-block 元素上设置背景颜色。只要通过添加<br> 标记来明确文本中的换行符,它就可以正常工作。如果没有<br> 标记并且它自行换行,它会变为 100% 宽度。
这里是“ipsum”后面的<br>标签。
这是它自己包装的时候:
https://jsfiddle.net/340v3hnj/
如何在不手动添加<br>标签的情况下将背景设置为文本框的大小?
.wrapper {
border: 1px solid red;
text-align: center;
width: 450px;
}
p {
display: inline-block;
margin: 0;
padding: 10px;
font: 50px arial;
color: white;
background: black;
width: auto;
}
<div class="wrapper">
<p>Lorem ipsum dolorsit amet</p>
</div>
【问题讨论】:
-
我已经更新了我的答案以获得更准确的宽度,您可以修改数字
-
这个问题经常被问到,但没有有效的答案。以下所有答案都使用固定宽度或边距设置,但对文本不是动态的...
-
发生这种情况是因为您的文本大小。背景位于渲染文本的后面。您可以通过缩小文本来测试这一点。