I need three child divs to have the same height as each other and as a parent div. The content of one div is set to change on user interaction, and any change in height resulting from this should drive the height of the parent or other children or both. I thought this was possible with flex.
I've tried to implement answers given to identical questions, but no luck so far. Can anyone spot what I'm doing wrong? I'm using Firefox and don't need this to work in other browsers for this prototype version, but of course it will save time later if it does.
I have tried 'position: absolute' and 'display: table' approaches at length with no joy. Would really like the flex approach, anyway.
div#filterRow {
min-height: 80px;
display: flex;
border: 2px solid red;
}
div#filterRow div.selectHolder {
border: 2px solid blue;
border-right: 0;
flex: auto;
height: 100%;
padding: 10px;
}
div#filterRow div.selectHolder div {
vertical-align: top;
}
div#filterRow div.selectHolder:last-child {
border-right: 1px solid lightgray;
}
div#filterRow div h1 {
margin: 0;
margin-bottom: 10px;
}
div#filterRow div div {
margin-right: 5px;
}
div#filterRow div#filters {
width: 800px;
}
div#filterRow div#highlight {
width: 300px;
}
div#filterRow div#granularity {
width: 400px;
}
div.fullwidth {
width: 100%;
}
<div class="fullwidth dispTR" id="filterRow">
<div class="selectHolder" id="filters">
<h1>Filters longer to make tall</h1>
</div>
<div class="selectHolder" id="highlight">
<h1>Highlight</h1>
</div>
<div class="selectHolder" id="granularity">
<h1>Group</h1>
</div>
</div>
Example here: https://jsfiddle.net/rt80wd6r/2/
Grateful for any help. I'm sure it's something obvious.
Here are the other questions: