2017-08-22 15 views
2

Web開発が初めてです。私はすべてのソリューションを介して行っているが、私はこれのためにどんな答えを見つけられませんでした固定ヘッダー付きの表にスクロールバーを追加する

<div class="col-xs-12 col-md-12 nopadding"> 
     <div class="table-responsive"> 
      <table class="table table-striped table-bordered col-xs-12 col-lg-12"> 
       <thead class="text-center text-info text-capitalize"> 
        <th class="text-center">Sr.No.</th> 
        <th class="text-center">Name</th> 
        <th class="text-center">Score</th> 
        <th class="text-center">Actions</th> 
       </thead> 
       <tbody> 
       <tr ng-repeat="file in processResumeFiles"> 
        <td class="text-center">{{ file.id}}</td> 
        <td class="view-orphan uploadResumeTableCellOverFlow"> 
         {{ file.attributes.name}} 
        </td> 
        <td class="text-center">{{file.totalScore}}</td> 
        <td class="text-center"> 
         <button class="btn btn-labeled btn-info" title="click to see" ng-disabled="!file.attributes.isUploadedDocument" data-ng-click="somemethod($index)"> 
          <i class="fa fa-eye" aria-hidden="true"></i> 
         </button> 
         <button class="btn btn-labeled btn-info" title="click to see" ng-disabled="!file.attributes.isCommitted || !file.attributes.isUploadedDocument" data-ng-click="somemethod(file.attributes.name)"> 
          <i class="fa fa-share" aria-hidden="true"></i> 
         </button> 
         <button class="btn btn-labeled btn-info" title="click to see" data-ng-click="somemethod(file.attributes.name)"> 
          <i class="fa fa-trash" aria-hidden="true"></i> 
         </button> 
         <button class="btn btn-labeled btn-info" title="click to see" ng-disabled="!file.attributes.isCommitted || !file.attributes.isUploadedDocument" data-ng-click="somemethod(file.attributes.name)"> 
          <i class="fa fa-sign-out" aria-hidden="true"></i> 
         </button> 
         <button class="btn btn-labeled btn-info" title="click to see" ng-disabled="!file.attributes.isCommitted || !isjdDeleted || !jdSelected" data-ng-click="somemethod(file.attributes.name)"> 
          <i class="fa fa-check-square" aria-hidden="true"></i> 
         </button> 
        </td> 
       </tr> 
</tbody> 
      </table> 
     </div> 
    </div> 

:以下

sr.No Name Score Action 
1  ABC 5  Add 
2  PQR 7  Remove 

HTML:私はのように見えるテーブルを持っています。 私はこのテーブルのスクロールバーを持っているし、ヘッダーを修正する必要があります。

どれでもお手伝いできますか?

は、私はこれを試してみました - >

table ,tr td{ 
    border:1px solid red 
} 
tbody { 
    display:block; 
    height:200px; 
    overflow:auto; 
} 
thead, tbody tr { 
    display:table; 
    width:100%; 
    table-layout:fixed;/* even columns width , fix width of table too*/ 
} 
thead { 
    width: calc(100% - 1em)/* scrollbar is average 1em/16px width, remove it from thead width */ 
} 
table { 
    width:400px; 
} 

これはに結果 - このためenter image description here

Plunker - >

Plunker

+2

は、次の2つの異なる部分にヘッダとコンテンツを作ることができますか? –

+0

@ganeshk [This](https://stackoverflow.com/a/23989771/6712896)は役に立ちませんか? – JeanJacques

+0

@JeanJacquesちょっと、データはドキュメントの列にあるファイルの名前と同じで、srは同じアクションです。いくつかのボタンがあり、スコアも数字です – ganeshk

答えて

1

私はあなたがこれを見ていると思いますか?

 table { 
 
      width: 100%; 
 
     } 
 

 
     thead, tbody, tr, td, th { display: block; } 
 

 
     tr:after { 
 
      content: ' '; 
 
      display: block; 
 
      visibility: hidden; 
 
      clear: both; 
 
     } 
 

 
     thead th { 
 
      height: 30px; 
 

 
      /*text-align: left;*/ 
 
     } 
 

 
     tbody { 
 
      height: 120px; 
 
      overflow-y: auto; 
 
     } 
 

 
     thead { 
 
      /* fallback */ 
 
     } 
 

 

 
     tbody td, thead th { 
 
      width: 19.2%; 
 
      float: left; 
 
     }
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table class="table table-striped"> 
 
    <thead> 
 
    <tr> 
 
     <th>Make</th> 
 
     <th>Model</th> 
 
     <th>Color</th> 
 
     <th>Year</th> 
 
    </tr> 
 
    </thead> 
 
    <tbody> 
 
    <tr> 
 
     <td class="filterable-cell">Ford</td> 
 
     <td class="filterable-cell">Escort</td> 
 
     <td class="filterable-cell">Blue</td> 
 
     <td class="filterable-cell">2000</td> 
 
    </tr> 
 
    <tr> 
 
     <td class="filterable-cell">Ford</td> 
 
     <td class="filterable-cell">Escort</td> 
 
     <td class="filterable-cell">Blue</td> 
 
     <td class="filterable-cell">2000</td> 
 
    </tr> 
 
      <tr> 
 
     <td class="filterable-cell">Ford</td> 
 
     <td class="filterable-cell">Escort</td> 
 
     <td class="filterable-cell">Blue</td> 
 
     <td class="filterable-cell">2000</td> 
 
    </tr> 
 
    <tr> 
 
     <td class="filterable-cell">Ford</td> 
 
     <td class="filterable-cell">Escort</td> 
 
     <td class="filterable-cell">Blue</td> 
 
     <td class="filterable-cell">2000</td> 
 
    </tr> 
 
    </tbody> 
 
    
 
</table>

+1

あなたの解決策は、開発者が各列に固定幅を設定する必要があることを意味します( –

+0

あなたは基本的にテーブルの動作を変更しました – madhurgarg

+0

はい、私は各列の幅を設定したくありません – ganeshk

0

ブートストラップを使用している間、あなたはヘッダを修正するtable-fixed CSSクラスを使用することができます。

<table class="table-fixed"> ... </table/> 

あなたは、テーブルをスクロール可能にしたい場合はその後、それがあります大きな問題であり、いくつかの解決策があります。ここで提案です:

tr { 
 
    width: 100%; 
 
    display: inline-table; 
 
    table-layout: fixed; 
 
} 
 

 
tbody { 
 
    overflow-y: scroll; 
 
    height: 100px; 
 
    width: 100%; 
 
    position: absolute; 
 
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet"/> 
 

 
<div class="container"> 
 
    <div class="row"> 
 
     <table class="table table-fixed"> 
 
      <thead> 
 
       <th class="col-xs-2">#</th> 
 
       <th class="col-xs-8">Name</th> 
 
       <th class="col-xs-2">Points</th> 
 
      </thead> 
 
      <tbody> 
 
      <tr> 
 
       <td class="col-xs-2">1</td><td class="col-xs-8">Mike Adams</td><td class="col-xs-2">23</td> 
 
      </tr> 
 
      <tr> 
 
       <td class="col-xs-2">2</td><td class="col-xs-8">Holly Galivan</td><td class="col-xs-2">44</td> 
 
      </tr> 
 
      <tr> 
 
       <td class="col-xs-2">3</td><td class="col-xs-8">Mary Shea</td><td class="col-xs-2">86</td> 
 
      </tr> 
 
      <tr> 
 
       <td class="col-xs-2">4</td><td class="col-xs-8">Jim Adams</td><td>23</td> 
 
      </tr> 
 
      <tr> 
 
       <td class="col-xs-2">5</td><td class="col-xs-8">Henry Galivan</td><td class="col-xs-2">44</td> 
 
      </tr> 
 
      <tr> 
 
       <td class="col-xs-2">6</td><td class="col-xs-8">Bob Shea</td><td class="col-xs-2">26</td> 
 
      </tr> 
 
      <tr> 
 
       <td class="col-xs-2">7</td><td class="col-xs-8">Andy Parks</td><td class="col-xs-2">56</td> 
 
      </tr> 
 
      <tr> 
 
       <td class="col-xs-2">11</td><td class="col-xs-8">Bill Champion</td><td class="col-xs-2">44</td> 
 
      </tr> 
 
      <tr> 
 
       <td class="col-xs-2">12</td><td class="col-xs-8">Lastly Jane</td><td class="col-xs-2">6</td> 
 
      </tr> 
 
      </tbody> 
 
     </table> 
 
    </div> 
 
</div>

+0

overflow-x scroll? –

+0

このクラスをテーブルに追加し、ansもCssファイルで変更を加えましたが、ヘッダーを修正しません。そのスクロールはヘッダーが固定されていません – ganeshk

関連する問題