2016-08-01 39 views
5

我已将我的div输入到容器{display:flex}中。一旦我摆脱显示:flex它工作正常,我可以看到我的html。另外我发现,如果我将我的百分比更改为px,我可以查看我的页面。柔性容器中不可见的儿童元素

这是为什么?

* { 
 
    padding: 0; 
 
    margin: 0; 
 
    box-sizing: border-box; 
 
    margin-top: .2%; 
 
} 
 
#container { 
 
    display: flex; 
 
    flex-flow: row wrap; 
 
} 
 
#one { 
 
    float: left; 
 
    background-color: black; 
 
    width: 25%; 
 
    height: 100vh; 
 
    margin-left: 2%; 
 
} 
 
#two { 
 
    float: right; 
 
    background-color: grey; 
 
    width: 70.5%; 
 
    height: 100vh; 
 
    margin-right: 2%; 
 
}
<div id="container"> 
 
    <div id="row"> 
 
    <div id="one"></div> 
 
    <div id="two"></div> 
 
    </div> 
 
</div>

+0

首先,这不是有效的HTML – Li357

+0

我仍然有同样的问题。 – Nick

+2

@Nick请(下次)尝试像我这样在代码片段中格式化您的代码(您的编辑器工具中有您的代码片段按钮);) –

回答

2

html, body{ height:100%;} /* not needed but good to have it */ 
 

 
* { 
 
    padding: 0; 
 
    margin: 0; 
 
    box-sizing: border-box; 
 
    /*margin-top: .2%; /* why? it'll mess with vh100 adding scrollbars.. */ 
 
} 
 
/*#container { you mean... */ 
 
#row { 
 
    display: flex; 
 
    flex-flow: row wrap; 
 
} 
 
#one { 
 
    /* float: left; /* unnecessary, now parent is flex */ 
 
    background-color: black; 
 
    width: 25%; 
 
    height: 100vh; 
 
    margin-left: 2%; 
 
} 
 
#two { 
 
    /* float: right; /* unnecessary, now parent is flex */ 
 
    background-color: grey; 
 
    width: /*70.5%; you mean... */ 71%; 
 
    height: 100vh; 
 
    margin-right: 2%; 
 
}
<div id="container"> 
 
    <div id="row"> 
 
    <div id="one"></div> 
 
    <div id="two"></div> 
 
    </div> 
 
</div>

+0

谢谢,我不知道漂浮会干扰flexbox :) – Nick

+0

Floats don不会干扰Flexbox。他们简单地被忽略。 –

+1

@Michael_B是的(这就是为什么我说*不必要*但谢谢指出!) –