我试图让views-cntnr占用views-cntnr和menubar divs未使用的任何空间.为此,我将flex显示设置为列方向.然后我将views-cntnr的flex-grow属性设置为1.似乎没有做任何事情.
JSFiddle
注意:不确定这是否重要,但我有一些嵌套的flex显示.
HTML
<script src="https://code.jquery.com/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> <script src="https://code.jquery.com/jquery-2.1.4.js"></script> <script src="https://code.jquery.com/jquery-1.11.3.js"></script> <script src="https://code.jquery.com/ui/1.11.4/jquery-ui.js"></script> <section class="analysis"> <div class="menubar"> <div class="view-ctrls text-center"> <div class="btn-group" role="group"> <button class="btn btn-default" ng-class="{'active-view': active_views[0]}" ng-click="toggleView(0)">R-Theta</button> <button class="btn btn-default" ng-class="{'active-view': active_views[1]}" ng-click="toggleView(1)">Cartesian</button> <button class="btn btn-default" ng-class="{'active-view': active_views[2]}" ng-click="toggleView(2)">Longitudinal</button> <button class="btn btn-default" ng-class="{'active-view': active_views[3]}" ng-click="">Console</button> </div> </div> </div> <div id="views-cntnr"> <div class="r1"> <div id="v1" class="view">V1</div> <div id="v2" class="view">V2</div> <div id="v3" class="view">V3</div> </div> <div class="r2"> <div id="v4" class="view">V4</div> </div> </div> <div id="frame-ctrl-cntnr"> <div id="frame-num" class="frame-ctrl"># X</div> <div id="frame-range-cntnr" class="frame-ctrl"> <input type="range"> </div> </div> </section>
CSS
.analysis { display: flex; flex-direction: column; } /* MENUBAR */ .menubar { padding: 4px 0 4px; background-color: #eee; } /* menubar */ /* VIEWS */ #views-cntnr { display: flex; flex-direction: column; flex-grow: 1; } /* ROW 1 */ .r1 { display: flex; } .r1 .view { flex-grow: 1; border: black 1px solid; border-right: none; } .r1 .view:last-child { border-right: black 1px solid; } /* row 1 */ /* ROW 2 */ .r2 .view { border: black 1px solid; border-top: none; } /* row 2 */ /* views */ /* FRAME CTRL */ #frame-ctrl-cntnr { display: flex; } .frame-ctrl { border: black 1px solid; border-top: none; border-right: none; } .frame-ctrl:last-child { border-right: black 1px solid; } #frame-num { width: 50px; } #frame-range-cntnr { flex-grow: 1; padding: 4px; } /* frame ctrl */