前言
最近在做的后台管理系统要处理大量的表格,因为原项目是采用的for循环加拼接字符串的方式实现;导致js代码一大堆;各种单引号和双引号的嵌套;让人头疼;遂引入vue.js;用v-for做模板渲染;工作量顿时减轻不少,心情舒畅;
文字被强制换行了
由于个别表的列数较多;文字都挤在一起向下换行了;现场惨不忍睹;于是采用强制不换行的方式
<style>
p{
 white-space: nowrap;//强制不折行
}
</style>新的问题是强制换行之后整个宽度超出了body
于是考虑到把table重要的列给固定掉;中间用横向滚动条来拖动;
<style>
p{
 white-space: nowrap;
 overflow: hidden;//控制溢出隐藏
 overflow-x: scroll;//设置横向滚动条
}
</style>考虑到要做固定列;于是要把table拆分出来;然后用浮动把table还原;下面这个案例就是把一个table拆成三个;然后浮动起来还原
考虑到要做自适应;于是采用百分比来做;
<style>
 p{
 width: 100%;
 white-space: nowrap;
 }
 table td{
 border: 1px solid #000;
 }
 .tab1{
 width: 20%;
 float: left;
 }
 .tab2{
 width: 70%;
 float: left;
 overflow: hidden;
 overflow-x: scroll;
 }
 .tab3{
 width: 10%;
 float: left;
 }
</style>
<body>
<p>
 <table class="tab1">
 <thead>
 <tr>
 <th>首列</th>
 </tr>
 </thead>
 <tbody>
 <tr>
 <td>首列</td>
 </tr>
 </tbody>
 </table>
 <table class="tab2">
 <thead>
 <tr>
 <th>中间列</th>
 </tr>
 </thead>
 <tbody>
 <tr>
 <td>中间列</td>
 </tr>
 </tbody>
 </table>
 <table class="tab3" >
 <thead>
 <tr>
 <th>尾列</th>
 </tr>
 </thead>
 <tbody>
 <tr>
 <td>尾列</td>
 </tr>
 </tbody>
 </table>
</p>
</body>于是上面这个案例就完成了
还有一点是中间table的表头也需要固定 不能随下面的额tbody去滑动;我这里采取的思路是用定位去做;既然上面都是用百分比去做;那么定位的left值也是百分比;这里就不上代码了
下载本文