2016-12-24 25 views
3

我似乎無法讓我的列全高。它們的總高度都比較小,它創建了一個垂直滾動條。 我正在關注這個SO thread答案。不能使自舉列全高

如果你運行它,下面的代碼不能正常工作,但是這個bootply正確地證明了我的問題。這兩列從底部的頁面跑出。

這裏是我的代碼和我bootply

因爲我與引導,HTML和CSS 經歷不是是否有這樣做,請讓我知道一個更好的辦法?謝謝!

我的代碼片段:

html, body, .container-fluid { 
 
      height: 100%; 
 
     } 
 

 
     .container-fluid { 
 
      display: table; 
 
      width: 100%; 
 
      margin-top: -50px; 
 
      padding: 50px 0 0 0; 
 
      box-sizing: border-box; 
 
     } 
 

 
     .row { 
 
      height: 100%; 
 
      display: table-row; 
 
     } 
 

 
     .col-sm-5 { 
 
      background: pink; 
 
      border: 1px solid purple; 
 
     } 
 

 
     .col-sm-7 { 
 
      background: yellow; 
 
     } 
 

 
     .row .no-float { 
 
      display: table-cell; 
 
      float: none; 
 
     }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/> 
 

 
<!DOCTYPE html> 
 
<html> 
 
<head> 
 
    <meta charset="utf-8" /> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 
    
 
</head> 
 
<body> 
 
    <nav class="navbar navbar-default"> 
 
    <div class="container-fluid"> 
 
    <!-- Brand and toggle get grouped for better mobile display --> 
 
    <div class="navbar-header"> 
 
     <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"> 
 
     <span class="sr-only">Toggle navigation</span> 
 
     <span class="icon-bar"></span> 
 
     <span class="icon-bar"></span> 
 
     <span class="icon-bar"></span> 
 
     </button> 
 
     <a class="navbar-brand" href="#">Brand</a> 
 
    </div> 
 

 
    <!-- Collect the nav links, forms, and other content for toggling --> 
 
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 
 
     <ul class="nav navbar-nav"> 
 
     <li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li> 
 
     <li><a href="#">Link</a></li> 
 
     <li class="dropdown"> 
 
      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a> 
 
      <ul class="dropdown-menu"> 
 
      <li><a href="#">Action</a></li> 
 
      <li><a href="#">Another action</a></li> 
 
      <li><a href="#">Something else here</a></li> 
 
      <li role="separator" class="divider"></li> 
 
      <li><a href="#">Separated link</a></li> 
 
      <li role="separator" class="divider"></li> 
 
      <li><a href="#">One more separated link</a></li> 
 
      </ul> 
 
     </li> 
 
     </ul> 
 
     <form class="navbar-form navbar-left"> 
 
     <div class="form-group"> 
 
      <input type="text" class="form-control" placeholder="Search"> 
 
     </div> 
 
     <button type="submit" class="btn btn-default">Submit</button> 
 
     </form> 
 
     <ul class="nav navbar-nav navbar-right"> 
 
     <li><a href="#">Link</a></li> 
 
     <li class="dropdown"> 
 
      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a> 
 
      <ul class="dropdown-menu"> 
 
      <li><a href="#">Action</a></li> 
 
      <li><a href="#">Another action</a></li> 
 
      <li><a href="#">Something else here</a></li> 
 
      <li role="separator" class="divider"></li> 
 
      <li><a href="#">Separated link</a></li> 
 
      </ul> 
 
     </li> 
 
     </ul> 
 
    </div><!-- /.navbar-collapse --> 
 
    </div><!-- /.container-fluid --> 
 
</nav> 
 
    
 
<div class="container-fluid wrapper"> 
 
    <div class="row"> 
 
     <div class="col-sm-5 no-float">map 
 
     </div> 
 
     <div class="col-sm-7 no-float">events 
 
     </div> 
 
    </div> 
 
</div> 
 
    
 
</body> 
 
</html>

回答

4

使用CSS calc()會做的伎倆。這將幫助您消除垂直滾動條。像:

html,body,.container { 
    height: calc(100% - 18px); 
} 

同時刪除從.containermargin-top: -50px。請從nav.navbar中刪除margin-bottom

看一看下面的代碼片段(使用全屏幕預覽):

html,body,.container { 
 
    height: calc(100% - 18px); 
 
} 
 
nav.navbar { 
 
    margin: 0; 
 
} 
 
.container { 
 
    display: table; 
 
    width: 100% !important; 
 
    padding: 0 !important; /*set left/right padding according to needs*/ 
 
    box-sizing: border-box; 
 
} 
 

 
.row { 
 
    height: 100%; 
 
    display: table-row; 
 
} 
 

 
.col-md-3 { 
 
    background: pink; 
 
} 
 
.col-md-9 { 
 
    background: yellow; \t 
 
} 
 

 
.row .no-float { 
 
    display: table-cell; 
 
    float: none; 
 
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/> 
 
<nav class="navbar navbar-default"> 
 
    <div class="container-fluid"> 
 
    <!-- Brand and toggle get grouped for better mobile display --> 
 
    <div class="navbar-header"> 
 
     <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"> 
 
     <span class="sr-only">Toggle navigation</span> 
 
     <span class="icon-bar"></span> 
 
     <span class="icon-bar"></span> 
 
     <span class="icon-bar"></span> 
 
     </button> 
 
     <a class="navbar-brand" href="#">Brand</a> 
 
    </div> 
 

 
    <!-- Collect the nav links, forms, and other content for toggling --> 
 
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 
 
     <ul class="nav navbar-nav"> 
 
     <li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li> 
 
     <li><a href="#">Link</a></li> 
 
     <li class="dropdown"> 
 
      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a> 
 
      <ul class="dropdown-menu"> 
 
      <li><a href="#">Action</a></li> 
 
      <li><a href="#">Another action</a></li> 
 
      <li><a href="#">Something else here</a></li> 
 
      <li role="separator" class="divider"></li> 
 
      <li><a href="#">Separated link</a></li> 
 
      <li role="separator" class="divider"></li> 
 
      <li><a href="#">One more separated link</a></li> 
 
      </ul> 
 
     </li> 
 
     </ul> 
 
     <form class="navbar-form navbar-left"> 
 
     <div class="form-group"> 
 
      <input type="text" class="form-control" placeholder="Search"> 
 
     </div> 
 
     <button type="submit" class="btn btn-default">Submit</button> 
 
     </form> 
 
     <ul class="nav navbar-nav navbar-right"> 
 
     <li><a href="#">Link</a></li> 
 
     <li class="dropdown"> 
 
      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a> 
 
      <ul class="dropdown-menu"> 
 
      <li><a href="#">Action</a></li> 
 
      <li><a href="#">Another action</a></li> 
 
      <li><a href="#">Something else here</a></li> 
 
      <li role="separator" class="divider"></li> 
 
      <li><a href="#">Separated link</a></li> 
 
      </ul> 
 
     </li> 
 
     </ul> 
 
    </div><!-- /.navbar-collapse --> 
 
    </div><!-- /.container-fluid --> 
 
</nav> 
 
<div class="container"> 
 
    <div class="row"> 
 
     <div class="col-md-3 no-float">Navigation</div> 
 
     <div class="col-md-9 no-float">Content</div> 
 
    </div> 
 
</div>

希望這有助於!

+0

是的謝謝你!什麼是17px? – user1186050

+0

@ user1186050它是由於導航欄等原因而獲得的額外像素高度。將在5分鐘內稍微重構代碼。 –

+0

很酷謝謝!非常感激! – user1186050