css - Flexbox 容器元素左对齐

标签 css flexbox

<分区>

我正在尝试使用 Flexbox 创建网格。

<div class="wrap">
  <div class="item one"></div>

  <div class="item two"></div>

  <div class="item three"></div>

  <div class="item four"></div>

  <div class="item five"></div>

  <div class="item six"></div>

  <div class="item seven"></div>
</div>

我想要的是使最后一个 div 左对齐(不使用 float),请参见下面的示例。

JS Bin example

为了更好的可视化,我附上了图片 - 注意最后两张产品卡片,它们与左侧对齐 enter image description here

那么,Flexbox如何帮助解决这样的问题呢?

最佳答案

使用flex-direction:columnalign-self:flex-start

片段

.wrap {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 325px;
}
.item {
  display: flex;
  align-items: center;
  flex-direction: column;
  border: 2px solid blue;
  height: 200px;
  width: 100px;
}
.item div {
  border: 2px solid red;
  height: 30px;
  width: 60px;
}
/*.sale {
  align-self: flex-start;
}*/

div div div:nth-of-type(3) {
  align-self: flex-start;
}
<div class="wrap">
  <div class="item one">
    <div>ITEM</div>
    <div>DESC</div>
    <div class='sale'>SALE</div>
    <div>PRICE</div>
  </div>

  <div class="item one">
    <div>ITEM</div>
    <div>DESC</div>
    <div class='sale'>SALE</div>
    <div>PRICE</div>
  </div>
  <div class="item one">
    <div>ITEM</div>
    <div>DESC</div>
    <div class='sale'>SALE</div>
    <div>PRICE</div>
  </div>
  <div class="item one">
    <div>ITEM</div>
    <div>DESCRIPTION</div>
    <div class='sale'>SALE</div>
    <div>PRICE</div>
  </div>
  <div class="item one">
    <div>ITEM</div>
    <div>DESC</div>
    <div class='sale'>SALE</div>
    <div>PRICE</div>
  </div>
  <div class="item one">
    <div>ITEM</div>
    <div>DESC</div>
    <div class='sale'>SALE</div>
    <div>PRICE</div>
  </div>
  <div class="item one">
    <div>ITEM</div>
    <div>DESC</div>
    <div class='sale'>SALE</div>
    <div>PRICE</div>
  </div>
</div>

关于css - Flexbox 容器元素左对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40962912/

上一篇:html - 顶部 : 50% is not working CSS

下一篇:css - 如何将 <div> 放置在输入字段的右侧

相关文章:

HTML导航定位

html - 可滚动 div 中的中心元素

css - 如何在使用 Bootstrap 4 和 Flex 制作的笛卡尔平面中拉伸(stretch)网格项?

css - -moz-box-flex 不工作

html - 如何强制垂直 flexbox 中的(旋转)元素不重叠?

css - 如何使 2 个元素适合页面高度?

html - 使用 Flexbox 获得等高的行,而不是列

CSS3 背景图像不会垂直拉伸(stretch)

javascript - 如何将 reactjs 文件与 css 连接

html - 表格位置绝对在 IE9 和 IE10 中不起作用