2017-12-06 2 views
0

私はドロップダウンリストを持っていますが、下にはテーブルがあります。 ngx-infinite-scrollingを使用しています。スクロールするときに、より多くのデータが追加されてスクロールダウンされるので、divの部分とテーブルのヘッダーを固定したままにしておきます。スクロールでdivとtableヘッダーを固定する

これはjsfiddle JSFiddle

HTMLコードです:私はポジション入れてみました

.topTable{ 
height:70px; 
background:red; 
margin-top:-20px; 
margin-bottom:20px;  
display: flex; 
padding-left: 32px; 
border:1px solid rgba(0,0,0,.1) 
} 

.tableDiv{ 
margin-top:50px 
} 

<div class="topTable row "> 

    <div class="col-md-4 col-lg-3 col-sm-4 col-6"> 
    <form class="form-inline"> 
     <div class="form-group" style="width:100%;max-width:200px;"> 
     <div class="input-group" style="width:100%"> 
      <select class="form-control" > 
       <option >All</option> 
       <option >Option1</option> 
       <option >Option1</option> 
        <option >Option1</option> 
       </select> 

     </div> 
    </div> 


<div class="container-fluid"> 
    <div class="col-md-12"> 
    <div class="col-md-12 tableDiv" > 
    <div class="constrained" > 
    <table class="table table-striped col-md-12 table-condensed cf" > 
    <thead class="table-bordered cf"> 
    <tr> 
     <th>Column1</th> 
     <th>Column2</th> 
     <th>Column3</th> 
     <th>Column4</th> 
     <th>Column5</th> 
     <th>Column6</th> 

    </tr> 
    </thead> 
    <tbody > 
    <tr> 
     <td > asdf</td> 
     <td >asdfa</td> 
     <td >fsdf</td> 
     <td>sdfsfd</td> 
     <td>sdfs</td> 
     <td>fsdfsdf</td> 
    </tr> 
     <tr> 
     <td > asdf</td> 
     <td >asdfa</td> 
     <td >fsdf</td> 
     <td>sdfsfd</td> 
     <td>sdfs</td> 
     <td>fsdfsdf</td> 
    </tr> 
     <tr> 
     <td > asdf</td> 
     <td >asdfa</td> 
     <td >fsdf</td> 
     <td>sdfsfd</td> 
     <td>sdfs</td> 
     <td>fsdfsdf</td> 
    </tr> 
     <tr> 
     <td > asdf</td> 
     <td >asdfa</td> 
     <td >fsdf</td> 
     <td>sdfsfd</td> 
     <td>sdfs</td> 
     <td>fsdfsdf</td> 
    </tr> 
     <tr> 
     <td > asdf</td> 
     <td >asdfa</td> 
     <td >fsdf</td> 
     <td>sdfsfd</td> 
     <td>sdfs</td> 
     <td>fsdfsdf</td> 
    </tr> 
     <tr> 
     <td > asdf</td> 
     <td >asdfa</td> 
     <td >fsdf</td> 
     <td>sdfsfd</td> 
     <td>sdfs</td> 
     <td>fsdfsdf</td> 
    </tr> 

    </tbody> 
    </table> 
</div> 
    <div> 
    </div> 
</div> 
</div> 
</div> 

CSSテーブル、その後、スクロールの下向きのdivに静的に、だろうがそれの上に行く。 またテーブルの静的およびそのヘッダーを修正する方法? 助けがありがたいです

+0

;を忘れてしまった[ポジション:?スティッキー](https://developer.mozilla.org/en-US/docs/Web/CSS/position) – blackandorangecat

+1

_ [であなたの質問を投稿ご検討ください最小、完全、および検証可能な例] _(https://stackoverflow.com/help/mcve)あなたがここに持っているものは、asdfで少し肥大しています。 – dferenc

+0

ああ、お詫び申し上げます。それらは行のためのちょうどランダムな内容だったので、それはスクロールする必要がある十分な行を持っています。 –

答えて

0

コンテンツブロックからトップブロックを分離する必要があります。

最初のブロックを固定することができます。ブロックはコンテンツブロックよりも100%幅とz-インデックスを取得する必要があります(デフォルトは0 - > 1以上必要です)。

position:fixed; 
width:100%; 
z-index: 1; 

私はあなたのフィドルをフォークしていますhttp://jsfiddle.net/n958b7q3/1/ 変更がマークされています。

いくつかのヒント:

HTML

  • あなたは本当に
  • あなたのフォームに必要な場合にのみ、新規のdivのを作り、多くのdiv要素に着いには終了タグがありません</form>

CSS:

  • あなたがborder:1px solid rgba(0,0,0,.1)
+0

ありがとうございますが、topDivを修正するだけです。私はテーブルヘッダーも固定しようとしていたので、スクロールダウンで両方を固定する必要があるため、どのポジションを使用するのかわからなかったのです。 –

+0

申し訳ありませんが、私は勘違いしました...このように:http://jsfiddle.net/adsrr8ss/? – MonTea

+0

ありがとうございますが、これは動作しません。なぜなら、ヘッダーはテーブルから切り離されていて、特定の列データにテキストが増えていて展開されていれば、ヘッダーは同じ処理をしないからです。 すべてのヘッダー列は、テキストの長さがわからないので、固定幅を与えずにコンテンツ列と一致する必要があります。 –

関連する問題