[英]Auto set height of parent with two children, omitting height for parent and one of child divs
在以下问题上,我会屈服。
假设我的结构如下
<div class="full_row">
<div class="content_left"></div>
<div class="content_right">
<div class="inner_row"></div>
<div class="inner_row"></div>
</div>
</div>
使用以下CSS:
.full_row {
background: lightgrey;
border: 1px solid grey;
width: 400px;
}
.content_left {
height: 100%;
float: left;
}
.content_right {
float: left;
border: 2px solid grey;
}
.inner_row {
height: 25px;
width: 250px;
border: 1px solid white;
}
如何实现以下目标:
我想使用普通的CSS来做到这一点,因为我想使事物闪亮并为其赋予动画效果。 我有包含所需状态的codepen(和上面的例子) 在这里 。
老实说,我试图在Stackoverflow和Google上找到它,并找到了一些有关何时知道父高的示例。 但是,还没有找到一个示例,其中一个孩子确定其父母的身高,而后者又确定另一个孩子的身高。 我几乎没有开始使用html / css。
非常感谢您的帮助。
是时候开始学习Flexbox了! 看看这个例子。
.full_row { display: flex; } .full_row > div { width: 50%; padding: 10px; } .content_left{ background: red; } .content_right{ background: blue; }
<div class="full_row"> <div class="content_left">aaaa</div> <div class="content_right"> <div class="inner_row">bbbb</div> <div class="inner_row">cccc</div> </div> </div>
对于这样的东西,Flexbox可能是一个不错的选择。 我牢记您自定义的列大小:
.full_row { background: lightgrey; border: 1px solid grey; width: 400px; display: flex; flex-direction: row; flex-wrap: nowrap; } .content_left { height: 100%; flex-grow: 1; } .content_right { border: 2px solid grey; flex-direction: column; } .inner_row { height: 25px; width: 250px; border: 1px solid white; }
<div class="full_row"> <div class="content_left">left</div> <div class="content_right"> <div class="inner_row"></div> <div class="inner_row"></div> </div> </div>
我猜有几种方法可以做到这一点,但是不确切知道您的明确目标是什么,这是一种解决方案:
.full_row {
display: table;
overflow: hidden;
background: lightgrey;
border: 1px solid grey;
width: 400px;
}
.content_left {
display: table-cell;
height: 100%;
width: 100%;
overflow: hidden;
}
.content_right {
display: table-cell;
border: 2px solid grey;
}
.inner_row {
height: 25px;
width: 250px;
border: 1px solid white;
}
重要提示:请记住要浮动:远离内容。 如果您想确定,但我仍然不知道您想要的结果,但是在正确的内容上添加float:right不会有任何危害。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.