Html 引导3:嵌套行的高度为0

Html 引导3:嵌套行的高度为0,html,css,twitter-bootstrap,grid-layout,Html,Css,Twitter Bootstrap,Grid Layout,我的标记: <div class="container"> <div class="row"> <div class="col-xs-12"></div> <div class="col-md-8 col-md-offset-2 col-sm-10 col-sm-offset-1 col-xs-12"> <div class="row"> <!-- this has 0 heig

我的标记:

<div class="container">
  <div class="row">
    <div class="col-xs-12"></div>    
    <div class="col-md-8 col-md-offset-2 col-sm-10 col-sm-offset-1 col-xs-12">
      <div class="row"> <!-- this has 0 height -->
        <div class="col-xs-6"></div>
        <div class="col-xs-6"></div>
      </div>
    </div>    
    <div class="col-xs-12"></div>
  </div>
</div>

嵌套行的宽度正确,高度为0,并且无论包含哪一列,都不能有
页边距底部
,这是什么原因


有趣的是,当我绝对定位一个伪元素
::在这一行的
之后,它正确地解析大小,比如
top:50%
,但只有当有问题的行有
位置:static
时,而不是当它有
位置:relative
时,行的高度可能会因为其浮动的子行而塌陷?尝试添加clearfix以清除其子浮动行:

<div class="row clearfix">

如果没有看到您自己的CSS也会导致问题,我不能完全确定,但是上面的内容可能会解决问题。仅供参考,
clearfix
类附带引导功能


关于clearfix,这里有一个很好的阅读和其他信息:

行的高度可能会因为其浮动的子行而崩溃?尝试添加clearfix以清除其子浮动行:

<div class="row clearfix">

如果没有看到您自己的CSS也会导致问题,我不能完全确定,但是上面的内容可能会解决问题。仅供参考,
clearfix
类附带引导功能

以下是有关clearfix的详细阅读和其他信息:

我重现了这个问题:

::pseudoelement之后删除
位置:绝对
:时,行的行为正常

由于::before和::after伪元素是引导网格的一个重要部分,因此这里最好的解决方案可能是不要混淆它们,而是在网格元素内创建一个单独的元素作为伪元素父元素,例如:

<div class="row">
  <div class="pseudoelement-parent">
    <div class="col-xs-6"></div>
    <div class="col-xs-6"></div>
  </div>
</div>

.pseudoelement-parent {
  position: relative;
}

.伪元素父元素{
位置:相对位置;
}
我重现了这个问题:

::pseudoelement之后删除
位置:绝对
:时,行的行为正常

由于::before和::after伪元素是引导网格的一个重要部分,因此这里最好的解决方案可能是不要混淆它们,而是在网格元素内创建一个单独的元素作为伪元素父元素,例如:

<div class="row">
  <div class="pseudoelement-parent">
    <div class="col-xs-6"></div>
    <div class="col-xs-6"></div>
  </div>
</div>

.pseudoelement-parent {
  position: relative;
}

.伪元素父元素{
位置:相对位置;
}

我正在尝试复制引导程序的列,我还想知道为什么我的行的高度是0。原来
display:table
内容:“”
清除:两者都有对于行的高度都很重要


我希望这能帮助一些人。

我正在尝试复制引导程序的列,我还想知道为什么我的行的高度是0。原来
display:table
内容:“”
清除:两者都有对于行的高度都很重要


我希望这对某人有所帮助。

他们的身高实际上是1磅。在这里,它也可以有一个边距底部。它们的实际高度为1px。在这里它也可以有一个边距底部。Clearfix没有改变任何东西。没有其他CSS会影响布局。在children上禁用
float:left
可以为行提供适当的高度,但显然会破坏网格。要清楚,我不需要解决方法,因为我可以自己找到一个,我只想知道这里发生了什么,以及什么是使.row正常运行的正确解决方案。两个嵌套列中都有内容,并且行的高度。。。在没有任何内容的情况下检查此行显示该行的高度为1px。。。恐怕我无法复制你所看到的@SentheYeah,我知道它应该可以工作,而且我的应用程序必须发生一些特定的事情,可能有一些编译错误,我不知道。我会调查的。现在我用
float:none解决了这个问题;显示:内联块关于儿童。好的,我重现了这个问题:当您从
中删除
位置:绝对
之后,行的行为正常。寓意:不要乱搞引导网格伪元素。Clearfix没有改变任何东西。没有其他CSS会影响布局。在children上禁用
float:left
可以为行提供适当的高度,但显然会破坏网格。要清楚,我不需要解决方法,因为我可以自己找到一个,我只想知道这里发生了什么,以及什么是使.row正常运行的正确解决方案。两个嵌套列中都有内容,并且行的高度。。。在没有任何内容的情况下检查此行显示该行的高度为1px。。。恐怕我无法复制你所看到的@SentheYeah,我知道它应该可以工作,而且我的应用程序必须发生一些特定的事情,可能有一些编译错误,我不知道。我会调查的。现在我用
float:none解决了这个问题;显示:内联块关于儿童。好的,我重现了这个问题:当您从
中删除
位置:绝对
之后,行的行为正常。寓意:不要乱搞引导网格伪元素。