【问题标题】:Why does a multi-line span change the width of a neighbouring div? [duplicate]为什么多行跨度会改变相邻 div 的宽度? [复制]
【发布时间】:2020-02-19 19:22:18
【问题描述】:

我的反应代码:

<InfoWrapper>
  <InfoCircle>
    <span>i</span>
  </InfoCircle>
  <span className="info-label">
    Lorem ipsum dolor sit amet, consectetur adipiscing elit.
    elit.
  </span>
</InfoWrapper>

这样正确渲染:

信息圈的大小为 28x28。

但如果我添加更多文本以使跨度扩展到多行,则信息圈的大小将变为 16.5x28:

我在InfoWrapper 上没有设置任何收缩规则,因为我将align-items 设置为flex-start,这样项目就不会垂直拉伸。

这是一个包含完整代码的 sn-p:

span {
  font-size: 0.875rem;
}


.info-wrapper {
  align-items: center;
  display: flex;
  flex-flow: row nowrap;
  margin-top: 1.25rem;
 }

.info-circle {
  align-items: center;
  background-color: #f5f7ff;
  border-radius: 0.875rem;
  display: flex;
  flex-flow: row nowrap;
  height: 1.75rem;
  justify-content: center;
  width: 1.75rem;
}

.info-label {
  font-size: 0.9375rem;
  margin-left: 0.5rem;
}
<div class="info-wrapper">
  <div class="info-circle">
    <span>i</span>
  </div>
  <span class="info-label">
    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
  </span>
</div>

【问题讨论】:

  • 寻求代码帮助的问题必须包括在问题本身中重现它所需的最短代码,最好是在堆栈片段中。尽管您提供了一个链接,但如果它变得无效,那么您的问题对于未来遇到同样问题的其他 SO 用户将毫无价值。见Something in my website/example doesn't work can I just paste a link
  • flex-shrink: 0; 添加到该图标
  • 感谢@TemaniAfif 和 Paulie。我用代码 sn-p 更新了问题正文

标签: html css reactjs flexbox


【解决方案1】:

您不能将宽度设置为 span 元素。 Span 的属性为display: inline;。将其更改为display: block;display: inline-block;,因为宽度仅适用于块元素。

【讨论】:

  • infocircle 是一个 div
  • 你是否也注意到它是一个 flex child 并且你可以调整它的大小,在这里显示不再重要......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-14
  • 1970-01-01
  • 2022-11-18
  • 1970-01-01
  • 2015-03-05
  • 1970-01-01
相关资源
最近更新 更多