<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>one page</title>
<style>
.fixedThead {
display: block;
}
.scrollTbody {
display: block;
height: 262px;
overflow: auto;
width: 100%;
}
.table td, .table th {
width: 200px;
border-bottom: none;
border-left: none;
border-right: 1px solid #CCC;
border-top: 1px solid #DDD;
word-break: keep-all;
white-space: nowrap;
}
.table tr {
border-left: 1px solid #EB8;
border-bottom: 1px solid #B74;
}
</style>
</head>
<body ng-controller="StudentsCtl">
<div align="center">学生成绩浏览表</div>
<div id="shop_top">
<div class="form-group" id="shop_filter">
过滤:<input type="text" class="form-control" ng-model="filter.$" placeholder="filter">
</div>
</div>
<table class="table table-hover table-bordered" si-table>
<thead class="fixedThead">
<tr>
<th ng-click="predicate='id'; reverse=!reverse">序号</th>
<th ng-click="predicate='examNo'; reverse=!reverse">准考证号</th>
<th ng-click="predicate='name'; reverse=!reverse">姓名</th>
<th ng-click="predicate='schoolName'; reverse=!reverse">学校</th>
<th ng-click="predicate='chinese'; reverse=!reverse">语文</th>
<th ng-click="predicate='math'; reverse=!reverse">数学</th>
<th ng-click="predicate='physics'; reverse=!reverse">物理</th>
<th ng-click="predicate='chemistry'; reverse=!reverse">化学</th>
<th ng-click="predicate='biology'; reverse=!reverse">生物</th>
<th ng-click="predicate='politis'; reverse=!reverse">政治</th>
<th ng-click="predicate='history'; reverse=!reverse">历史</th>
<th ng-click="predicate='geography'; reverse=!reverse">地理</th>
<th ng-click="predicate='englishHear'; reverse=!reverse">听力</th>
<th ng-click="predicate='english'; reverse=!reverse">英语</th>
<th ng-click="predicate='totalScore'; reverse=!reverse">总分</th>
</tr>
</thead>
<tbody class="scrollTbody">
<tr ng-repeat="i in stus | filter:filter|orderBy:predicate:reverse">
<td>{{$index+1}}</td>
<td>{{ i.examNo }}</td>
<td>{{ i.name }}</td>
<td>{{ i.schoolName }}</td>
<td>{{ i.chinese }}</td>
<td>{{ i.math }}</td>
<td>{{ i.physics }}</td>
<td>{{ i.chemistry }}</td>
<td>{{ i.biology }}</td>
<td>{{ i.politis }}</td>
<td>{{ i.history }}</td>
<td>{{ i.geography }}</td>
<td>{{ i.englishHear }}</td>
<td>{{ i.english }}</td>
<td>{{ i.totalScore }}</td>
</tr>
</tbody>
</table>
<!-- 分页部件 -->
<div class="pager">
<span>数据库一共有{{totalItems}}条记录</span><span style="margin-left: 30px"> 一共有:{{pageCount}}页</span>
<span style="margin-left: 20px">当前为第:{{currentPage}}页</span>
<br>
<pager page-count="pageCount" current-page="currentPage" on-page-change="onPageChange()" first-text="首页"
next-text="下一页" prev-text="上一页" last-text="尾页" show-goto="true" goto-text="跳转到"></pager>
</div>
</body>
</html>
效果:
给表头的列设定成定宽就好了。
*<table>
<colgroup >
<col width="40%"/>
<col width="30%"/>
<col width="15%"/>
<col width="15%"/>
</colgroup>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</tr>
</table>*
另外表头没有滚动条,但是body有滚动条,所以还会有点小偏差。所以在表头最后加一列占位,大概17px,用来抵消滚动条的宽度。
设置准考证和学校这两个字段宽度,其他可以自适应,滚动条可以模拟一个,不用浏览器自带
滚动条的宽度导致你表格和表头不能够对齐
<style>
.head{
width: 500px;
border-right: 1px solid #dddddd;
overflow: hidden;
}
.head span{
float: left;
display: inline-block;
width: 99px;
height: 30px;
line-height: 30px;
border-left: 1px solid #dddddd;
border-top: 1px solid #dddddd;
text-align: center;
}
.body{
width: 501px;
height: 200px;
overflow-y: auto;
overflow-x: hidden;
}
.body table{
width: 501px;
border-right: 1px solid #dddddd;
border-bottom: 1px solid #dddddd;
border-spacing: 0;
border-collapse: collapse;
text-align: center;
}
.body td{
padding: 10px 0;
border-left: 1px solid #dddddd;
border-top: 1px solid #dddddd;
}
.body td.has-width{
width: 99px;
}
</style>
<div class="head">
<span>1</span>
<span>1</span>
<span>1</span>
<span>1</span>
<span>1</span>
</div>
<div class="body">
<table>
<tbody>
<tr>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td>1</td>
</tr>
<tr>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td>1</td>
</tr>
<tr>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td>1</td>
</tr>
<tr>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td>1</td>
</tr>
<tr>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td>1</td>
</tr>
<tr>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td>1</td>
</tr>
<tr>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td class="has-width">1</td>
<td>1</td>
</tr>
</tbody>
</table>
</div>
不要给tbody和thead改display,单独写一个div用于thead,然后在table外面套个div,设置其overflow-y:auto,最后表格的最后一列不要设置宽度,这样可以关联收缩