首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用引导带4,包含“描述列表”的卡片的宽度随着列表项的增加而增加。

使用引导带4,包含“描述列表”的卡片的宽度随着列表项的增加而增加。
EN

Stack Overflow用户
提问于 2020-11-17 03:30:31
回答 2查看 250关注 0票数 0

我正试着用一张单张卡划一排,每张牌的宽度都是必要的,但不能更宽。这似乎是一个弹性容器的工作,我几乎可以看到它的工作。

但是,对于我添加到列表中的每个元素,卡片的宽度都会增加,并显示在下面和片段中。

是否有办法使卡片变宽取决于文本的宽度(没有这种奇怪的副作用)?

代码语言:javascript
复制
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container">
    <h1>Other content</h1>
    <div class="col-12 bg-danger p-1">
      <div class="d-flex flex-row">
        <div class="p-2 bg-info">
          <div class="card border-left-primary">
            <div class="card-header">
              <h6 class="m-0 font-weight-bold text-primary">My Card</h6>
            </div>
            <div class="card-body">
              <dl class="row">
                <dt class="col-3">Key</dt>
                <dd class="col-9">Value</dd>
                <dt class="col-3">Key</dt>
                <dd class="col-9">Value</dd>
                <!-- Add more items to see the effect  -->
              </dl>
            </div>
          </div>
        </div>
      </div>
    </div>

    <!-- Here we show the effect -->
    <div class="col-12 bg-danger p-1">
      <div class="d-flex flex-row">
        <div class="p-2 bg-info">
          <div class="card border-left-primary">
            <div class="card-header">
              <h6 class="m-0 font-weight-bold text-primary">My Card</h6>
            </div>
            <div class="card-body">
              <dl class="row">
                <dt class="col-3">Key</dt>
                <dd class="col-9">Value</dd>
                <dt class="col-3">Key</dt>
                <dd class="col-9">Value</dd>
                <dt class="col-3">Key</dt>
                <dd class="col-9">Value</dd>
                <!-- Add more items to see the effect  -->
              </dl>
            </div>
          </div>
        </div>
      </div>
    </div>

</div>

EN

回答 2

Stack Overflow用户

发布于 2020-11-17 05:11:03

我的假设

我的猜测是,柔性盒父母的宽度(卡体内的.row )是由他们的孩子计算的first,就好像父母没有包装,并试图尽可能地挤压它的孩子一样:

然后根据他们的父母计算孩子的宽度百分比。

但我也无法证明这一点。

“修正”

修复将不是仅仅依赖于行的包装。相反,如果一个键值对应该位于它们自己的行上,那么使用Bootstrap的行和列作为结构显式地定义它们:

代码语言:javascript
复制
<div class="row">
    <div class="col-auto">
        <strong>Key</strong>
    </div>
    <div class="col-auto">Value</div>
</div>
<div class="row">
    <div class="col-auto">
        <strong>Key</strong>
    </div>
    <div class="col-auto">Value</div>
    <!-- Add more items to see the effect  -->
</div>

可以使用.col-auto将列宽度设置为“自动”,以避免对键和值进行包装。如果您想要在键上固定宽度,请设置它们的宽度。

演示: https://jsfiddle.net/davidliang2008/nt6ov5fy/28/

注意:您似乎错过了.rows上的<div class="col-12 bg-danger p-1">。我已经在我的演示中添加了它们。

票数 1
EN

Stack Overflow用户

发布于 2020-11-17 04:04:10

你可以简单地处理这个问题。

代码语言:javascript
复制
<div class="col-12 bg-danger p-1">
  <div class="d-flex flex-row">
    <div class="p-2 bg-info">
      <div class="card border-left-primary">
        <div class="card-header">
          <h6 class="m-0 font-weight-bold text-primary">My Card</h6>
        </div>
        <div class="card-body" style="max-width: 250px !important; overflow-x: auto;">
          <dl class="row">
            <dt class="col-3">Key</dt>
            <dd class="col-9">Value</dd>
            <dt class="col-3">Key</dt>
            <dd class="col-9">Value</dd>
            <dt class="col-3">Key</dt>
            <dd class="col-9">Value</dd>
            <!-- Add more items to see the effect  -->
          </dl>
        </div>
      </div>
    </div>
  </div>
</div>

一旦完成,这将不会让div扩展。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64868938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档