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>

时间: 2024-11-06 20:39:24

css冻结列的效果的相关文章

div css三列布局效果实例代码

div css三列布局效果实例代码:三列布局在是比较中规中矩的布局之一,大量的网站都有应用,也是初学者必须要掌握的布局方式之一,下面就是一个三列布局的实例代码,仅供参考之用,希望对初学者有一定的帮助,代码实例如下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <

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

前言:一年前,博主分享过一篇关于bootstrapTable组件冻结列的解决方案  JS组件系列——Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案 ,通过该篇,确实可以实现bootstrapTable的冻结列效果,并且可以兼容ie浏览器.这一年的时间,不断有园友以及群里面的朋友问过我关于固定高度之后,冻结列页面效果不能对齐的问题,奈何博主太忙,一直没有抽空将这个问题优化.最近项目里面也不断有人提过这个bug,这下子不能再推了,必须要直面“惨淡的bug”,于是昨天利用一天的

只用css实现“每列四行,加载完一列后数据自动填充到下一列”的效果

只用css实现“每列四行,加载完一列后数据自动填充到下一列”的效果.这个题目用图表示如下: 如果将题目换成“只用css实现每行四列,加载完一行后数据自动填充到下一行”,那这个问题就简单多了,相信大家都能使用多种方法实现.但现在这个问题该怎么去解决呢. 对了这个题目,似乎不是那么好解决,毕竟像这类问题我们都是使用js或者模版辅助实现的. 这个题目难点在哪儿? 对动态添加的数据只用css实现这个效果,那就意味着除了动态添加数据外,不可能改变现有的文档结构.什么意思呢?比如对于这种实现,我们可以使用u

JS组件系列——Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案

前言:最近项目里面需要用到表格的冻结列功能,所谓“冻结列”,就是某些情况下表格的列比较多,需要固定前面的几列,后面的列滚动.遗憾的是,bootstrap table里自带的fixed column功能有一点bug,于是和同事讨论该如何解决,于是就有了这篇文章. 一.起因回顾 最近项目里面有一个表格需求,该表格列是动态产生的,而且列的数量操作一定值以后就会出现横向滚动条,滚动的时候需要前面几列固定.也就是所谓的excel的冻结列功能.该如何实现呢?不用多说,当然是查文档,于是找到了这篇http:/

在DataGridView控件中实现冻结列分界线

我们在使用Office Excel的时候,有很多时候需要冻结行或者列.这时,Excel会在冻结的行列和非冻结的区域之间绘制上一条明显的黑线.如下图: (图1) WinForm下的DataGridView控件也能实现类似的冻结行或者列的功能(参见:http://msdn.microsoft.com/zh-cn/library/28e9w2e1(VS.85).aspx) ,但是呢,DataGridView控件默认不会在冻结列或者行的分界处绘制一个明显的分界线,这样的话,最终用户很难注意到当前有列或者

怎么在Microsoft Project中冻结列

在用Project排项目计划的时候如果在Gantt图中列比较多,左右滚动的时候就会经想像如果能想Excel一样冻结某些列就方便多了,其实在Project中虽然没有冻结列的功能,但通过一些变通方法还是可以做到类似效果的. 方法是利用Project的表格总是冻结第一列的特性,将想要冻结的列变为第一列,以达到类似效果.具体操作见演示:

css 两列自适应布局的4种思路

前面的话 前面已经介绍过css 两列布局中单列定宽单列自适应布局的6种思路的两列布局,而两列自适应布局是指一列由内容撑开,另一列撑满剩余宽度的布局方式.本文将从float.table.flex和grid来介绍两列自适应布局的4种思路 float [思路一]float 在单列定宽单列自适应的两列布局中,经常用float和负margin配合实现布局效果.但由于margin取值只能是固定值,所以在两列都是自适应的布局中就不再适用.而float和overflow配合可实现两列自适应效果.使用overfl

bootstrap table实现iview固定列的效果

因为bootstrap自带的固定列效果满足不了公司需求,所以借助fixed-table这个插件完成了iview固定列的效果 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>左右两侧固定列,中间内容可以横向拖动</title> <link rel="stylesheet" hr

HTML和CSS中的居中效果(1)

HTML和CSS中的居中效果 单行上下左右居中 Html: <div class="container"></div> CSS: .container{ width: 600px; height: 300px; text-align: center; line-height: 300px; border: 1px solid green; } 固定高宽上下左右居中 Html: <div class="container"><