/ / flex-flow stĺpec s bočným pohľadom divs v tele - html, css, css3, flexbox

flex-flow stĺpec s bočným pohľadom divs v tele - html, css, css3, flexbox

Pokúšať sa robiť stĺpcový flexbox so záhlavím, telom a päte a potom v tele máte 2 diely vedľa seba, ktoré rešpektujú hranice flex-boxu (tj neprekonajte zápätie).

html,
body {
height: 100%;
margin: 0;
}

.app {
display: flex;
flex-flow: column;
height: 100%;
}

.header {
flex: 0 1 auto;
border-style: solid;
border-width: 1px;
border-color: blue;
}

.body {
display: flex;
flex-flow: column;
flex: 1 1 auto;
overflow-y: auto;
border-style: solid;
border-width: 1px;
border-color: red;
}

.footer {
flex: 0 1 40px;
border-style: solid;
border-width: 1px;
border-color: green;
}

.inner {
position: absolute;
}
.left {
float: left;
width: 200px;
height: 100%;
}

.right {
margin-left: 225px;
height: 100%;
}

Jednoduchý testovací prípad v jsfiddle

<div class="app">
<div class="header">
<p><b>header</b>
<br />
<br />(sized to content)</p>
</div>
<div class="body">
<div class="inner">

<div class="left">
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
<p>test 1</p>
</div>
<div class="right">
<p>test 2</p>
<p>test 2</p>
<p>test 2</p>
<p>test 2</p>
<p>test 2</p>
<p>test 2</p>
<p>test 2</p>
<p>test 2</p>
<p>test 2</p>
<p>test 2</p>
<p>test 2</p>
</div>
</div>

</div>
<div class="footer">
<p><b>footer</b> (fixed height)</p>
</div>
</div>

https://jsfiddle.net/XJ45G19/9e7vjykv/

tu zadajte popis obrázku

Akákoľvek myšlienka, kde sa budem mýliť? Vďaka vopred!

odpovede:

1 pre odpoveď č. 1

Odoslanie na požiadanie v odpovedi:

odstrániť position: absolute z .inner.


1 pre odpoveď č. 2

V strede nie je pretek .body element, pretože obsah bol absolútne umiestnený, čo ho odstraňuje z bežného toku.

Po odstránení position: absolute z .inner, obsah zaberá miesto a vertikálna posuvná lišta sa objaví .body.