html - float div 低于合作伙伴

标签 html css

考虑以下 HTML 结构,

<div class='floated' id='div1'></div>
<div class='floated' id='div2'></div>
<div class='floated' id='div3'></div>

使用以下 CSS:

.floated {
  width: 50%;
  float: left;
}

#div1 {
  height: 300px;
  background-color:red;
}

#div2 {
  height: 30px;
  background-color: green;  
}

#div3 {
  height: 30px;
  background-color: yellow; 
}

这样,#div1 将占据页面左侧 300px 高的部分,而 #div2#div3将 float 到页面的右侧。我如何设置我的CSS,所以#div1#div2占用一行(高度300px,最大高度two), 而 #div3 会被放在 #div1 的正下方吗?

我不是在控制这些div的高度,这个是动态的,有可能有时候第一个只有20px,第二个1000px,反过来也是一种可能性

这是一个 fiddle :https://jsfiddle.net/1u55fukj/

最佳答案

您可以在父元素(在本例中为 body)上使用 Flexbox 并使用 flex-wrap: wrap。这将始终使同一行中的两个 div 的高度相等或等于较高的高度 DEMO

body {
  display: flex;
  flex-wrap: wrap;
}
.floated {
  flex: 0 0 50%;
}
#div1 {
  height: 300px;
  background-color: red;
}
#div2 {
  background-color: green;
}
#div3 {
  height: 30px;
  background-color: yellow;
}
<div class='floated' id='div1'></div>
<div class='floated' id='div2'></div>
<div class='floated' id='div3'></div>

关于html - float div 低于合作伙伴,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40423801/

相关文章:

html - Css 表格列宽 "as is"

javascript - 无法将下拉菜单的 innerHTML 设置为数组的变量

javascript - 对图像的不同部分产生悬停效果,而不是 html 而是 img

javascript - 在父 div 元素的鼠标悬停时更改图像源

javascript - 在鼠标悬停时增加标题文本的大小

javascript - 如何使 jQuery 可拖动 div 上的文本可选择?

javascript - 获取元视口(viewport)标签以在桌面上工作

html - css onclick 更改显示 :none to display:block property

CSS 优先级和层次结构

javascript - android textview 中带有 &lt;style&gt; 标签和样式的 Html 字符串