當表格的列比較多的時候,可能就需要固定表格的寬度了,預設的100%寬已經不適應了。預設的100%寬要實現改變視窗大小也100%的話,在table元素上添加width="100%",至於css的100%為什麼不生效,原因未知。下麵就說說設置如何給datatables設置固定的寬度。 1.html代碼 ...
當表格的列比較多的時候,可能就需要固定表格的寬度了,預設的100%寬已經不適應了。預設的100%寬要實現改變視窗大小也100%的話,在table元素上添加width="100%",至於css的100%為什麼不生效,原因未知。下麵就說說設置如何給datatables設置固定的寬度。
1.html代碼
<div id="tableArea"> <table id="userTable" class="display table table-bordered" cellspacing="0" > <thead> <tr> <th style="display: none">ck</th> <th>序號</th> <th>賬號</th> <th>姓名</th> <th>CPID</th> <th>CP名稱</th> <th>操作</th> </tr> </thead> </table> </div>
2.覆蓋某些樣式(我們的樣式優先順序高,所以會覆蓋內置的樣式)
#tableArea .dataTables_wrapper { position: relative; clear: both; zoom: 1; overflow-x: auto; } #tableArea table{ width: 800px; }
這裡的overflow-x:auto是新增的,表示表格內容超出寬度後,出現橫向滾動條;table的width必須寫死寬度,直接寫在table元素上不生效,原因未知。
3.設置列寬(可略)
"columns": [
{ "data": "number", "orderable": false ,"width":"100px","searchable": false}
]
4.運行瀏覽,發現此時,當瀏覽器視窗小於800像素的時候,表格出現了橫向的滾動條,正是我們想要的結果。
5.為什麼不用"scrollX":true的配置實現橫向滾動條呢?查詢它渲染後的網頁發現,它把table拆分成了兩個表格,一個表示表頭,一個表示表體。這不是我想要的,而且它表頭的內容若是超出的話是隱藏的。