css冻结列的效果

Posted N神3

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了css冻结列的效果相关的知识,希望对你有一定的参考价值。

<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="utf-8" />
<title>css冻结列的效果</title>
<!-- 1.div里面放table或者其它容器,当子容器的宽度大于父容器时,父容器就会出现滚动条。
2.头部固定不动的列让它脱离文档流(position:fixed|absolute),然后给table一个margin-left值避免给固定列挡住
3.尾部固定不动的列让它脱离文档流(position:absolute),然后给尾巴添加一个占位td,因为尾部固定列会挡住最后一列
4.注意:固定列加了position:absolute不能相对于自己父亲元素(table和div),否则固定不了。 -->
<style type="text/css">

.container{
width:200px;
overflow: scroll;
}


table{
border-collapse: collapse;
border: 1px solid #000;
width:100%;
margin-left:25px;
margin-right:25px;
}

table td{
border: 1px solid #666666;
width:30px;
}

.head{
background-color:red;
position: fixed;
left:0;
}

.foot{
background-color:red;
position: absolute;
left:150px;
}

.title{
width:50px;
}

</style>

</head>
<body >

<div class="container">
<table>
<tr><td class="head"><div>固定标题</div></td>
<td>标题2</td>
<td>标题3</td>
<td>标题4</td>
<td>标题5</td>

<td>标题1</td>
<td>标题1</td>
<td>标题1</td>
<td>标题1</td>
<td>标题1</td>

<td>标题1</td>
<td>标题1</td>
<td>标题1</td>
<td>标题(last)</td>
<td>占位</td>
<td class="foot">固定标题</td>
</tr>

<tr>
<td class="head">内容</td>
<td>内容</td>
<td>内容</td>
<td>内容</td>
<td>内容</td>

<td>内容</td>
<td>内容</td>
<td>内容</td>
<td>内容</td>
<td>内容</td>

<td>内容</td>
<td>内容</td>
<td>内容</td>
<td>内容</td>
<td>占位</td>
<td class="foot">内容</td>
</tr>

</table>
</div>

</body>
</html>

以上是关于css冻结列的效果的主要内容,如果未能解决你的问题,请参考以下文章

JS组件系列——自己动手扩展BootstrapTable的 冻结列 功能:彻底解决高度问题

实现表格冻结顶栏效果

带有冻结标题和前四列的 GridView?

为啥在WPF中使用DataGridView的行冻结没有效果

在WPF中使用DataGrid如何实现行冻结的功能

CSS3之多列布局