DIV不采取父DIV的高度(W /自举)(Div not taking height of pare

2019-10-21 10:58发布

我会指出,我知道这个问题已经被问了很多,但没有我看到的似乎是答案为我工作开始。

基本上,我有一个更大的div中一些div。 他们将有动态文本,所以我不知道有多少行,每行会。 问题是,我似乎无法得到的div大小自己父母的高度。 我想列的div占用行div的整个高度(基本上,我想那蓝色部分填补所有的酒吧之间的空间)。

HTML:

<div class="container">
    <div class="row divOne">
        <div class="col-xs-3 divTwo">Some Text</div>
        <div class="col-xs-3">
            Some text that could wrap to multiple lines
        </div>
    </div>
    <div class="row divOne">
        <div class="col-xs-3 divTwo">Different Text</div>
        <div class="col-xs-3 divThree">
            With some more text
        </div>
    </div>
</div>

CSS:

.divOne
{
    border-top:10px solid black;
}

.divTwo
{
    background-color: #32649b;
    height:100%;
    color:white;
}

的jsfiddle:


现在,我已经从这个问题的其他版本得知是

  • 浮动:左可能会拧起来
  • 高度:如果父母的高度定义100%不工作
  • 位置:相对可能有助于父

与浮子的问题是 ,我使用的是引导,而这也正是浮子是从哪里来的,所以我真的不希望弄乱。

我真的不能确定家长的高度,因为它会根据孩子是动态的。

我也试图与位置乱搞:相对父和绝对的孩子,但似乎变得很扭曲。 我也猜测了,因为我使用的是引导这将无法工作。 这是可能的,我只是失去了一些东西,但。 我承认不是最大的用CSS


我不知道如果我是因为我使用的引导,还是因为我只是一个白痴,现在有这些问题。

别的东西,这似乎是扔扳手到的东西:这些列将区别在较小的屏幕与较大的布局。 其实我是想沿着线COL-XS-12 COL-MD-3的这些东西。

Answer 1:

简短的回答是,你不能真正引导框架的约束范围内实现这一目标。 有很多的文章,解释为什么div元素,不能拉伸,其容器的高度,以及如何解决这个问题。 其中我最喜欢的解决方案是人造列

但是,让我们多一点创造性那么。

我想出了一些可能对您的方案工作,但需要一点点的变化,以您的标记。 下面是包装与引导电网解决方案display: table

http://jsfiddle.net/Wexcode/13Lfqmjo/

HTML:

<div class="table-container">
    <div class="table-row divOne">
        <div class="col-xs-3 divTwo">Some Text</div>
        <div class="col-xs-3">
            Some text that could wrap to multiple lines
        </div>
        <div class="col-xs-6"></div>
    </div>
</div>

CSS:

.table-container {
    margin: 0 -15px;
}

.table-row {
    display: table;
    width: 100%;
}

.table-row [class^="col"] {
    display: table-cell;
    padding: 0 15px;
    float: none;
}

请注意,此解决方案正常工作,您必须包含足够的col元素伸展它的所有12列(见我添加一个空.col-xs-6格)。



Answer 2:

你可以加

display:flex;

到divOne,并会像你想要的。 在引导4“行”类应用此DIV上,但更早期版本中,你需要的,如果你希望这样的行为来手动添加。



Answer 3:

.divOne一个display: flex并卸下height: 100%.divTwo

 .divOne { border-top:10px solid black; display: flex; } .divTwo { background-color: #32649b; /*height:100%;*/ color:white; } 
 <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet"/> <div class="container"> <div class="row divOne"> <div class="col-xs-3 divTwo">Some Text</div> <div class="col-xs-3"> Some text that could wrap to multiple lines </div> </div> <div class="row divOne"> <div class="col-xs-3 divTwo">Different Text</div> <div class="col-xs-3 divThree"> With some more text </div> </div> </div> 



文章来源: Div not taking height of parent div (w/ bootstrap)