2021-8-9 前端達人
當表格的列比較多的時候,可能就需要固定表格的寬度了,默認的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拆分成了兩個表格,一個表示表頭,一個表示表體。這不是我想要的,而且它表頭的內容若是超出的話是隱藏的。
6.還有兩個樣式,可以參考參考,可能對你有用。
table td{
word-break:break-all;
}
單詞也可以允許換行,這對于單元格的寬度有很好的控制,而不會讓單元格被內容撐開!
table
{
table-layout:fixed;
}
表格布局算法為固定(列寬由表格寬度和列寬度設定)。
文章來源:博客園
分享此文一切功德,皆悉回向給文章原作者及眾讀者.
免責聲明:藍藍設計尊重原作者,文章的版權歸原作者。如涉及版權問題,請及時與我們取得聯系,我們立即更正或刪除。
藍藍設計( m.paul-jarrel.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 、平面設計服務