2017-01-24 29 views
0

私はスクロールでtbodyが必要です、そして、theadはスクロールを持つべきではありません。そうすることで、theadの幅はtheadのテキストのサイズに縮小されます。theadの幅はtbodyと異なります

のtbody

これは私が持っているものであるとして、thead要素の幅の大きさが同じにする方法はあります。 https://jsfiddle.net/Viraj173/jqwgkq8k/

CSS

tbody.scroll{ 
    overflow-y: auto; 
    height:100px;   
position: absolute; 
} 

th { 
    color: #ffffff; 
    background: #373d49; 
    padding: 5px; 
    text-align: left; 
    font-size: 14px; 
} 

HTML

<table > 
    <thead> 
     <tr> 
     <th> 
      Value 
     </th> 
     </tr>        
    </thead> 
    <tbody class="scroll"> 
    <tr> 
     <td> 
     Setting Value 1 
     </td> 
    </tr> 
    <tr> 
     <td> 
     Setting Value 1 
     </td> 
    </tr> 
    <tr> 
     <td> 
     Setting Value 1 
     </td> 
    </tr> 
    <tr> 
     <td> 
     Setting Value 1 
     </td> 
    </tr> 
    <tr> 
     <td> 
     Setting Value 1 
     </td> 
    </tr> 
    <tr> 
     <td> 
     Setting Value 1 
     </td> 
    </tr> 
    <tr> 
     <td> 
     Setting Value 1 
     </td> 
    </tr> 
    <tr> 
     <td> 
     Setting Value 1 
     </td> 
    </tr> 
    <tr> 
     <td> 
     Setting Value 1 
     </td> 
    </tr> 

    </tbody> 
</table> 
+0

を修正した後、私はTHEAD、あなたが位置に設定してきたようにtbodyのためのCSSには、テーブルの上に静的な幅を追加されます。絶対。 https://jsfiddle.net/jqwgkq8k/1/ – Gezzasa

答えて

0

はい、あなたは<thead>セクションで<th>タグの幅値を与えることができます。 これを試してみてください。このような

<thead> 
     <tr> 
     <th width="108px" > 
      <center> Value</center> 
     </th> 
     </tr>      
    </thead> 

http://codepen.io/anon/pen/QdgJbg

またはあなたがちょうどこのようにCSSで編集することができます。

tbody.scroll{ 
     overflow-y: auto; 
     height:20vh;   
     position: relative; 
     display: block; 
    } 

    th { 
     color: #ffffff; 
     background: #373d49; 
     padding: 5px; 
     width:110px; 
     text-align: left; 
     text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); 
     font-size: 14px; 
     wight:20vh; 
    } 

http://codepen.io/anon/pen/dNRwWW

0

使用この:

th { 
    color: #ffffff; 
    background: #373d49; 
    padding: 5px; 
    padding-right:100px; 
    text-align: center; 
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); 
    font-size: 14px; 
} 
+0

紛失した幅を埋め合わせるために、パディングを使用しないでください。 TH内のコピーを変更すると、幅が変更されます。 – Gezzasa

+0

:) –

0

これは私がコード

tbody.scroll{ 
    overflow-y: auto; 
    height:20vh;   
    position: relative; 
    display: block; 
} 

https://jsfiddle.net/5ya1c55x/

+0

スクロールが最初の列の次に来るので、もう1列追加すると機能しません。 –

+0

あなたはtbodyに列を追加するのですか? – rifa29

+0

あなたの目標は何ですか? これを見てくださいhttps://jsfiddle.net/3jk8m02q/ tbodyに2番目の列を追加し、2番目の列の後ろにスクロールが来ます – rifa29

関連する問題