私はTwitterのブートストラップを使用していますが、それが私がやっていることに違いをもたらすとは思いません。
基本的に私はテーブルを持っています。テーブルを埋めている列挙型の長さと、コンテナの全長まで「パディング」したい最後の行をテストしています。つまり、10行未満の場合は、次の行スパンを持つ行を追加したいです。 10 - item.count...ただし、空白の行をレンダリングするだけです...これは意図的なものですか、それとも何か間違っていますか? ここにフィドルがあります:
ここに表があります...どんな助けでも大歓迎です...
<table class="table table-bordered">
<thead>
<tr>
<th>#</th>
<th>First Name</th>
<th>Last Name</th>
<th>Username</th>
</tr>
</thead>
<tbody>
<tr>
<td rowspan="2">1</td>
<td>Mark</td>
<td>Otto</td>
<td>@mdo</td>
</tr>
<tr>
<td>Mark</td>
<td>Otto</td>
<td>@TwBootstrap</td>
</tr>
<tr>
<td>2</td>
<td>Jacob</td>
<td>Thornton</td>
<td>@fat</td>
</tr>
<tr>
<td>3</td>
<td colspan="2">Larry the Bird</td>
<td>@twitter</td>
</tr>
<tr>
<td colspan="4" rowspan="10">
this should be a row that is 10 rows long...
</td>
</tr>
</tbody>
</table>
編集:
示唆されているように、javascript が答えのようです...これが私が思いついたものです。テーブルがタブにあるという事実のために行の高さをテストし、高さ属性が現在ではなかったため 0 に戻りましたアクティブなタブで..
$('.stretch').each(function () {
var rows = $(this).rowCount();
if (rows < 10) {
var lr = $(this).children('tbody').children('tr:last');
var bg = lr.children('td').first().css('background-color');
var ht = lr.css('line-height').replace('px', '') * (10 - rows);
var row = '<td colspan="' + lr.children('td').length + '"></td>';
$(this).children('tbody').append('<tr style="height: ' + ht + 'px; background-color: ' + bg + '">' + row + '</tr>');
}
});
また、私が何をしていたかを明確にするために...テーブルが1行をレンダリングするとき、それは本当に嫌いです:)私はテーブルのアクションアイテムをフッターに入れる傾向があるので、これはコンテナーを巨大列を作成し、tfoot を親の下部または親のすぐ近くに固定します....