html - CSS - 定位多个相邻的 div 以在 2 个 div 之间堆叠一个

标签 html css flexbox

<分区>

我面临一个问题,我需要让几个相邻的 div 以某种方式定位:

enter image description here

它们的 html 布局位置紧挨着:

<div class="parent">
    <div class="div1">....</div>
    <div class="div2">....</div>
    <div class="div3">....</div>
    <div class="div4">....</div>
</div>

我试过使用 flex boxes 并浮出 Div1 和 Div4,但它不起作用。我还需要 Div1 和 Div4 的高度根据 Div2 和 Div3 的内容垂直对齐到正确的动态高度。

最佳答案

CSS 网格可以帮助您轻松解决这个问题。

.parent {
  display: grid;
  grid-gap: 10px;
  grid-template-columns: [col1-start] 100px  [col2-start] 100px  [col3-start] 100px [col3-end];
  grid-template-rows: [row1-start] auto [row2-start] auto [row2-end];
}

.div1, .div2, .div3, .div4 {
  background-color: #444;
  color: #fff;
  padding: 20px;
}

.div1 {
  grid-column: col1-start;
  grid-row: row1-start / row2-end ;
}
.div2 {
  grid-column: col2-start ;
  grid-row: row1-start;
}
.div3 {
  grid-column: col2-start;
  grid-row: row2-start ;
}
.div4 {
  grid-column: col3-start ;
  grid-row: row1-start / row2-end ;
}
<div class="parent">
    <div class="div1">....</div>
    <div class="div2">....</div>
    <div class="div3">....</div>
    <div class="div4">....</div>
</div>

可以找到更多示例HERE .

关于html - CSS - 定位多个相邻的 div 以在 2 个 div 之间堆叠一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49459424/

上一篇:html - 如何使用 bootstrap 4 调整卡片组内图像的大小?

下一篇:javascript - 在单击第二个按钮之前不会添加 .css 类

相关文章:

javascript - 如何在jquery sortable中获取json数据?

c# - 单击按钮更改div的背景颜色

jquery - 禁用 div 内的所有表单元素

javascript - 如何从 Knockout.js 的复选框列表中只选择一个复选框

html - 如何将图像居中对齐?

html - 响应式 div block

javascript - 是否可以通过下降隐藏值访问 HTML 元素?

javascript - MVC 4 应用程序中的动态背景图像

html - 从 Flexbox 中排除内部元素?

html - 为什么 flex 元素不缩小过去的内容大小?