2016-08-19 5 views
0

I''m с помощью JS DataTable, и я пытаюсь установить высоту по умолчанию для таблицы и высоту по умолчанию для строки, на самом деле то, что я сделал это:Невозможно установить высоту стола и тр и

$(document).ready(function() { 
    var table = $('#example').DataTable 
    ({ 
     iDisplayLength: 15, 
     "bLengthChange": false 
    }); 
    $("#example").css("height", "650px"); 
    $("#example tbody tr").css("height", "75px !important"); 
}); 

и это мой HTML:

<table id="example" class="table table-striped table-bordered" cellspacing="0" width="100%"> 
    <thead> 
     <tr> 
      <th>Name</th> 
      <th>Position</th> 
      <th>Office</th> 
      <th>Age</th> 
      <th>Start date</th> 
      <th>Salary</th> 
     </tr> 
    </thead> 

    <tfoot> 
     <tr> 
      <th>Name</th> 
      <th>Position</th> 
      <th>Office</th> 
      <th>Age</th> 
      <th>Start date</th> 
      <th>Salary</th> 
     </tr> 
    </tfoot> 

    <tbody> 
     <tr> 
      <td>Tiger Nixon</td> 
      <td>System Architect</td> 
      <td>Edinburgh</td> 
      <td>61</td> 
      <td>2011/04/25</td> 
      <td>$320,800</td> 
     </tr> 
     <tr> 
      <td>Garrett Winters</td> 
      <td>Accountant</td> 
      <td>Tokyo</td> 
      <td>63</td> 
      <td>2011/07/25</td> 
      <td>$170,750</td> 
     </tr> 
    </tbody> 
</table> 

Для живого примера я вставил JSFIDDLE here.

Как вы можете видеть, что tr не получает высоту по умолчанию, но слишком велико, как я могу это исправить?

+0

Что вы подразумеваете под «tr не получает высоту по умолчанию, но слишком велико». в этом коде, –

+0

@NalinAggarwal, если вы видите, что я установил 75px в tr, но не 75px, tr получает высоту таблицы, и это плохо – user3287550

ответ

0

Это потому, что вы устанавливаете высоту стола 650 px, поэтому она растягивает ваши строки до суммирования до 650 пикселей (20 пикселей для обоих верхних и нижних колонтитулов & 305 для обеих строк данных). Поскольку высота таблицы работает с приоритетом, так что высота строки автоматически устанавливается таблицей. путем деления высоты между строкой данных одинаково, а для верхнего и нижнего колонтитула - по умолчанию. Поэтому, если вы собираетесь установить высоту стола, высота строки не будет работать так, как вы ее ищете. Лучше установить максимальную высоту для стола и установить высоту для строки

$("#example").css("max-height", "650px"); 
$("#example tbody tr").css("height", "75px"); 
+0

Но мне нужна высота по умолчанию для datatable. – user3287550

+0

Ну, я не думаю, что если он будет работать с ростом стола или нет! работа для этого, оберните таблицу с помощью div и дайте высоту этому div. div будет занимать это место на вашей странице. и tr будет работать согласно указанному css !! –

Смежные вопросы