当前位置: 首页 > 知识库问答 >
问题:

Flex导致按钮超出div[重复]

吕德惠
2023-03-14

我正在尝试创建相等的卡片状列,使用flex将按钮固定到内容底部未对齐的位置。不幸的是,按钮被从列中推出。我知道这是因为卡体的高度设置为100%,但我不知道为什么它会将高度设置为超出其父级。

任何帮助都将不胜感激!

代码笔:https://codepen.io/anon/pen/wLjrzw

HTML:

<!--
.container-fluid>.row>.col-12.col-sm-6.col-md-3.ja-card*4>a>img[src="http:lorempixel.com/400/300/cats"]^.ja-counter{$}+.ja-card-body.d-flex.flex-column>h4>lorem4^p>lorem^a.mt-auto.btn.btn-lg.btn-primary>lorem2
-->
<div class="container-fluid">
  <div class="row">
    <div class="col-12 col-sm-6 col-md-3 ja-card">
      <a href=""><img src="http:lorempixel.com/400/300/cats" alt=""></a>
      <div class="ja-counter">1</div>
      <div class="ja-card-body d-flex flex-column">
        <h4>Lorem ipsum dolor sit.</h4>
        <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Provident, impedit qui voluptates porro vero incidunt, aliquid dignissimos quae a tempora nisi quis consequatur atque. Officiis laudantium laborum ab sequi pariatur?</p>
        <a href="" class="mt-auto btn btn-lg btn-primary">Lorem, ipsum.</a>
      </div>
    </div>
    <div class="col-12 col-sm-6 col-md-3 ja-card">
      <a href=""><img src="http:lorempixel.com/400/300/cats" alt=""></a>
      <div class="ja-counter">2</div>
      <div class="ja-card-body d-flex flex-column">
        <h4>Optio excepturi inventore reprehenderit?</h4>
        <p>Sapiente quis, commodi fugiat architecto temporibus accusantium veniam quasi nisi tempore facere sint similique magni, quae suscipit rem molestias. Officia quidem sint sapiente odit nisi sit pariatur repellat eaque consequuntur.Sapiente quis, commodi fugiat architecto temporibus accusantium veniam quasi nisi tempore facere sint similique magni, quae suscipit rem molestias. Officia quidem sint sapiente odit nisi sit pariatur repellat eaque consequuntur.</p>
        <a href="" class="mt-auto btn btn-lg btn-primary">Quidem, perferendis!</a>
      </div>
    </div>
    <div class="col-12 col-sm-6 col-md-3 ja-card">
      <a href=""><img src="http:lorempixel.com/400/300/cats" alt=""></a>
      <div class="ja-counter">3</div>
      <div class="ja-card-body d-flex flex-column">
        <h4>Aperiam porro quae deserunt?</h4>
        <p>Doloremque tenetur aut adipisci dolore sed aspernatur! Praesentium vitae ut, quisquam sed nesciunt odit! Tempora incidunt, laborum impedit ratione maiores ipsum, laboriosam odit aspernatur ex reiciendis necessitatibus similique id optio?</p>
        <a href="" class="mt-auto btn btn-lg btn-primary">Nobis, eum.</a>
      </div>
    </div>
    <div class="col-12 col-sm-6 col-md-3 ja-card">
      <a href=""><img src="http:lorempixel.com/400/300/cats" alt=""></a>
      <div class="ja-counter">4</div>
      <div class="ja-card-body d-flex flex-column">
        <h4>Aspernatur mollitia commodi ipsum!</h4>
        <p>Quia veniam recusandae ut, cum porro assumenda. Aut magnam quo rem sapiente vitae sequi, distinctio error repudiandae consequatur ut doloribus commodi rerum? Cumque iure quis pariatur, consequatur dolore consectetur doloribus?</p>
        <a href="" class="mt-auto btn btn-lg btn-primary">Odit, consectetur?</a>
      </div>
    </div>
  </div>
</div>

CSS:

.ja-card {
  background-color: #d6d6d6;
  padding: 0;
} 
img {
  width: 100%;
} 
.ja-card:nth-child(even) {
  background-color: #f6f6f6;
}
.ja-card-body {
  height:100%;
  padding: 2em;
}
.ja-counter {
  position: relative;
  top: 0;
  left: 50%;
  margin: -35px 0 0 -35px;
  display: block;
  width: 70px;
  height: 70px;
  border: 5px solid #fff;
  border-radius: 50%;
  color: #fff;
  font-family: "Helvetica", sans-serif;
  font-size: 36px;
  font-weight: bold;
  line-height: 60px;
  text-align: center;
  background-color:red;
}

共有2个答案

严言
2023-03-14

将框大小:边框框添加到您的。ja卡体CSS定义。

能远
2023-03-14

更好的方法是将flexbox用于卡。然后在孩子之间留出空间。

所以

  • 添加显示:flexflex-方向:列. ja-card
  • . ja-card-body
  • 设置 ready-contents-: space-在之间

此外,无需为<代码>设置100%高度。ja卡体。这是无用的。

工作演示

 类似资料:
  • 我正在尝试将tap事件附加到div。我有以下代码片段。 这个片段给了我错误 根据文档,tap事件可用于任何元素。当我将代码段切换到 我没有收到这个错误。如何将事件正确地附加到div元素?

  • 我对JavaFX仍然非常陌生,目前正在从在线教程中学习。我一直在尝试为一个类项目构建一个计算器,并且在大多数情况下,它似乎可以工作......直到按下清除按钮。一旦按下,清除按钮会导致所有操作符按钮不再起作用,当用户尝试单击一个按钮时,我会收到非常大的错误字符串。 这是此错误列表: 以下是我的.java类: 这是我的FXML文件: 知道是什么导致了这种情况的发生吗?

  • 我有下面的div,希望在单击按钮时显示它。 我在按钮点击事件中使用这个jquery代码。 $('.container collapse')。removeClass('.container collapse')。addClass(“容器”); 为什么现在不显示div,因为我已经改变了类? 它抛出一个错误未捕获的类型错误:$(...)。

  • 我正在尝试隐藏按钮div和显示一个隐藏的div后,一个表单按钮已经被点击,加上延迟提交/重定向。下面是我想出的办法,但似乎没有100%奏效。 null null 任何建议都非常感谢

  • 问题内容: 寻找一种向反应表中添加“导出到CSV”按钮的方法,该表是npmjs包(https://www.npmjs.com/package/react- table )。 我需要添加一个自定义按钮,以将表格数据以csv或xls格式导出​​到Excel工作表吗? 问题答案: 看看这个故宫图书馆- https://www.npmjs.com/package/react- csv 例如 -