2016-12-24 2 views
3

ここにはbootplyがあり、右側の列にはdivにいくつかのパネルが作成されています。私はパネルを列内でスクロールするようにしようとしていますが、ページ全体ではなく(ヘッダーやフッターを上下にスクロールさせたくない)、何らかの理由で 'overflow-y:スクロール 'が無効になっているか、動作していませんここでDivが列にスクロールしない

は私のコードは、あなたがそれをスクロールさせるためにheight#eventsContainerに割り当てる必要があり

html,body,.container { 
 
    height:calc(100% - 17px); 
 
} 
 
.container { 
 
    display:table; 
 
    width: 100%; 
 
    margin-top: -50px; 
 
    padding: 0px 0 0 0; /*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; 
 
} 
 
header, footer { 
 
      text-align: center; 
 
      padding-top: 10px; 
 
      padding-bottom: 10px; 
 
      border-bottom: 1px solid lightgrey; 
 
      background: white; 
 
     } 
 

 
     footer { 
 
      border-top: 1px solid lightgrey; 
 
      position: absolute; 
 
      bottom: 0; 
 
      width: 100%; 
 
     }
<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-6 no-float">Navigation</div> 
 
     <div class="col-sm-6 no-float" style="padding-left: 0px; padding-right: 0px;"> 
 
      <header> 
 
       <div class="btn-group btn-group-lg" role="group" aria-label="..."> 
 
        <button type="button" class="btn btn-default">Events</button> 
 
        <button type="button" class="btn btn-default">Hosts</button> 
 
        <button type="button" class="btn btn-default">Teachers</button> 
 
       </div> 
 
      </header> 
 
      
 
      <div id="eventsContainer" style="overflow-y: scroll;"> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
      </div> 
 
      <footer> 
 
       <div class="btn-group" role="group" aria-label="..."> 
 
        <button type="button" class="btn btn-default">Events</button> 
 
        <button type="button" class="btn btn-default">Hosts</button> 
 
        <button type="button" class="btn btn-default">Teachers</button> 
 
       </div> 
 
      </footer> 
 
     </div> 
 
    </div> 
 
</div>

+0

ここで私はdivの多くを見ることができます。 –

+0

あなたはどれがスクロールしたいですか? –

+0

私がスクロールしたいdivはid = "eventsContainer"を持つdivです。私はオーバーフローを受けました-y:scroll – user1186050

答えて

1

です。したがって、CSSのcalc()機能を使用してください。同様に:

#eventsContainer { 
    height: calc(100% - 122px); /* Total Height - Height of (header + footer) */ 
} 

は、以下の作業スニペットを見てください:

#eventsContainer { 
 
    height: calc(100% - 122px); 
 
} 
 

 
html,body,.container { 
 
    height:calc(100% - 17px); 
 
} 
 
.container { 
 
    display:table; 
 
    width: 100%; 
 
    margin-top: -50px; 
 
    padding: 0px 0 0 0; /*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; 
 
} 
 
header, footer { 
 
    text-align: center; 
 
    padding-top: 10px; 
 
    padding-bottom: 10px; 
 
    border-bottom: 1px solid lightgrey; 
 
    background: white; 
 
} 
 

 
footer { 
 
    border-top: 1px solid lightgrey; 
 
    position: absolute; 
 
    bottom: 0; 
 
    width: 100%; 
 
}
<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-6 no-float">Navigation</div> 
 
     <div class="col-sm-6 no-float" style="padding-left: 0px; padding-right: 0px;"> 
 
      <header> 
 
       <div class="btn-group btn-group-lg" role="group" aria-label="..."> 
 
        <button type="button" class="btn btn-default">Events</button> 
 
        <button type="button" class="btn btn-default">Hosts</button> 
 
        <button type="button" class="btn btn-default">Teachers</button> 
 
       </div> 
 
      </header> 
 
      
 
      <div id="eventsContainer" style="overflow-y: scroll;"> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
       <div class="panel panel-default"> 
 
        <div class="panel-body"> 
 
         Basic panel example 
 
        </div> 
 
       </div> 
 
      </div> 
 
      <footer> 
 
       <div class="btn-group" role="group" aria-label="..."> 
 
        <button type="button" class="btn btn-default">Events</button> 
 
        <button type="button" class="btn btn-default">Hosts</button> 
 
        <button type="button" class="btn btn-default">Teachers</button> 
 
       </div> 
 
      </footer> 
 
     </div> 
 
    </div> 
 
</div>

・ホープ、このことができます!

0

コンテンツがコンテナを超過しようとするとオーバーフローが発生するという問題があります。あなたの例では、#eventsContainerには高さが設定されておらず、HTMLの性質(内容に合わせて縦方向に拡張する)のために、コンテンツが押し出されていました。

スクロールを実現するには、#eventsContainerの高さを設定する必要があります。

しかし、この高さをダイナミックにし、「300px」のような静的ではないと思っているので、私はjsfiddleを叩いて外に押し出さずにフルスクリーン版を作成する方法を示しました。

+0

このタイプの機能を達成する別の方法はありますか?いくつのパネルが存在するかによって、フッターを隠すことがあります。だから私はcalc(100%〜122px)は私のために働くとは思わない。 – user1186050

+0

大丈夫@ user1186050しかし、私の答えの仕事かどうか? –

+0

あなたの例では動作していますが、私のページでは機能していません。 – user1186050

関連する問題