原创 https://blog.csdn.net/q3585914/article/details/69946478

table表头和首列的表格固定-CSS实现的Table表头固定

原创 2017年04月10日 14:06:21
  • 14190

效果就是上图 表头是固定的, 
跟随滑动轴动,左边第一列也是可以跟谁滑动轴滚动 
下面是代码原文是查看

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="author" content="jack">
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,
user-scalable=no" />
<!-- 适应手机屏幕,防止屏幕缩放 --> <!--样式-->
<link rel="stylesheet" type="text/css" href="http://www.jq22.com/jquery/bootstrap-3.3.4.css">
</head> <body>
<title>固定表头和首列的表格</title>
<style type="text/css">
#left_div{
width:100px;
float: left;
}
#left_div1{
width: 100%;
}
#left_div2{
margin-top:-20px;
width: 100%;
height: 400px;
overflow: hidden;
}
#left_table1 th{
background: #E9F8FF;
text-align:center;
}
#left_table2 th{
text-align:center;
} #right_div{
float: left;
}
#right_div1{
width: 100%;
overflow: hidden;
}
#right_divx{
width: 900px;
}
#right_div2{
margin-top:-20px;
width:100%;
height:400px;
overflow: auto;
}
#right_table1{
width: 880px;
}
#right_table2{
/**width和max-width一起写,手机浏览器打开也能固定长度**/
width: 880px;
max-width: 880px;
white-space:nowrap;
}
#right_table1 th{
background: #E9F8FF;
text-align:center;
width:10%;
}
#right_table2 td{
width:10%;
text-align:center;
} </style>
<div class="container-fluid">
<div id="left_div">
<div id="left_div1">
<table id="left_table1" class="table table-bordered">
<tr>
<th>我不会动</th>
</tr>
</table>
</div>
<div id="left_div2">
<table id="left_table2" class="table table-bordered">
</table>
</div>
</div>
<div id="right_div">
<div id="right_div1">
<div id="right_divx">
<table id="right_table1" class="table table-bordered">
<tr>
<th>我是表头</th>
<th>我是表头</th>
<th>我是表头</th>
<th>我是表头</th>
<th>我是表头</th>
<th>我是表头</th>
<th>我是表头</th>
<th>我是表头</th>
<th>我是表头</th>
<th>我是表头</th>
</tr>
</table>
</div>
</div>
<div id="right_div2">
<table id="right_table2" class="table table-bordered">
</table>
</div>
</div>
</div> <!--脚本-->
<script src="http://www.jq22.com/jquery/jquery-1.10.2.js"></script>
<script src="./bootstrap.min.js" type="text/javascript"></script>
<script type="text/javascript"> //固定和滚动
var right_div2 = document.getElementById("right_div2");
right_div2.onscroll = function(){
var right_div2_top = this.scrollTop;
var right_div2_left = this.scrollLeft;
document.getElementById("left_div2").scrollTop = right_div2_top;
document.getElementById("right_div1").scrollLeft = right_div2_left;
}
//设置右边div宽度
document.getElementById("right_div").style.width=""+document.documentElement.clientWidth-130+"px";
setInterval(function() {
document.getElementById("right_div").style.width=""+document.documentElement.clientWidth-130+"px";
}, 0); for(var i=0;i<24;i++){
$("#left_table2").append("<tr><th>我是首列</th></tr>");
$("#right_table2").append("<tr><td>"+i+"</td><td>"+i+"</td><td>"+i+"</td><td>"+i+"</td><td>"+i+"</td><td>"+i+"</td><td>"+i+"</td><td>"+i+"</td><td>"+i+"</td><td>"+i+"</td></tr>");
} </script>
</body>
</html>

这句js 不要忘记加了

var right_div2 = document.getElementById("right_div2");
right_div2.onscroll = function(){
var right_div2_top = this.scrollTop;
var right_div2_left = this.scrollLeft;
document.getElementById("left_div2").scrollTop = right_div2_top;
document.getElementById("right_div1").scrollLeft = right_div2_left;
}
//设置右边div宽度
document.getElementById("right_div").style.width=""+document.documentElement.clientWidth-130+"px";
setInterval(function() {
document.getElementById("right_div").style.width=""+document.documentElement.clientWidth-130+"px";
}, 0);

如果你遇到问题,可以加群315552185 
一起交流哦!

css 表单头部固定的更多相关文章

  1. CSS表单设计

    今天我们开始学习<十天学会web标准(div+css)>的css表单设计,包含以下内容和知识点: 改变文本框和文本域样式 用图片美化按钮 改变下拉列表样式 用label标签提升用户体验 一 ...

  2. js 节点 document html css 表单节点操作

    js 节点 document html css 表单节点操作 节点操作:访问.属性.创建 (1)节点的访问:firstChild.lastChild.childNodes.parentChild(父子 ...

  3. Web标准:九、CSS表单设计

    Web标准:九.CSS表单设计 知识点: 1.改变文本框和文本域样式 2.用图片美化按钮 3.改变下拉列表样式 4.用label标签提升用户体验   1)改变文本框和文本域样式 文本框标签:<i ...

  4. css 表单标签两端对齐

    来自:http://demo.doyoe.com/css3/justify/justify-form.htm  侵删 <!DOCTYPE html> <html lang=" ...

  5. CSS 表单

    输入框前有图片 老板让你实现在输入框前有图片的功能.老板觉得用图片代替文字更有说服力. 要实现这样的功能很简单,它的原理是将图片放在内边距内. 代码 1 2 3 4 5 6 7 8 9 10 11 1 ...

  6. bootstrap -- css -- 表单控件

    若干css样式 .form-control { display: block; width: 100%; height: 34px; padding: 6px 12px; font-size: 14p ...

  7. 什么是CSS 表单?

    ㈠输入框(input) 样式 ⑴使用 width 属性来设置输入框的宽度   示例:css部分:input { width: 100%; }                html部分:<for ...

  8. CSS表单与数据表(下)

    2.表单 表单是用户输入内容的地方.表单涉及的控件很多,而且一直很难给它们应用样式.无法控制样式的部分,可以通过自定义控件来解决. 2.1 简单的表单 2.1.1 fieldset与legend fi ...

  9. CSS表单与数据表(上)

    表单在现代Web应用中占据着重要地位. 表单可以很简单,也可以非常复杂,要横跨几个页面. 除了从用户哪里获得数据,Web应用还需要以容易看懂的方式展示数据.表格是展示复杂数据的最佳方式. 1.设计数据 ...

随机推荐

  1. percona-toolkit 工具介绍

    percona-toolkit 工具介绍 percona-toolkit 是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务.这些任务包括: 检查master和s ...

  2. vmware 虚拟 CPU 性能计数器事件与主机 CPU 不兼容。

    错误提示:虚拟 CPU 性能计数器事件与主机 CPU 不兼容. 点放弃 如果是暂时状态选关机, 丢失掉运行状态,即可保留硬盘内容重新开机

  3. 解决Nginx反向代理不会自动对特殊字符进行编码的问题 如gitblit中的~波浪线

    问题起因是利用Nginx做反向代理的时候,需要访问如下链接http://192.168.14.141/iserver/services/3D-0524hd/rest/realspace/datas/0 ...

  4. laravel 设置自定义 Validator

    转自:https://learnku.com/docs/laravel/5.4/validation/1234#custom-validation-rules 自定义验证规则 Laravel 提供了许 ...

  5. python中5个json库的速度对比

    python中json的序列化与反序列化有很多库,具体选择使用哪一个,或者哪一个速度更快呢? 先上结果 json序列化与反序列化速度对比(按总时间排序:测试数据100 * 10000) ujson 序 ...

  6. SoapUI乱码问题处理方法

    前言 每个工具都会有一些意想不到的“坑”,SoapUI也不例外.无论是参数或者响应报文,大家可能都遇到过乱码问题,这里记录一下几种解决乱码的方法. 一.修改显示字体 在File>>> ...

  7. [10期]浅谈SSRF安全漏洞

    引子:SSRF 服务端请求伪造攻击 很多web应用都提供从其他服务器上获取数据的功能.使用用户指定的URL,web应用可以从其他服务器获取图片,下载文件,读取文件内容等. 这个功能被恶意使用的话,可以 ...

  8. Kubernetes kubeadm 安装记录

    Kubernetes kubeadm 安装记录 注:比较乱,都是一些预见到的错误 kubernetes yum 源 cat /etc/yum.repos.d/kubernetes.repo [kube ...

  9. java二周的学习总结

    一转眼二周就过去了,个人觉得虽然java和C语言有差异,但差别并不大,因为语法语句方面都是差不多的,因为我上个学期并没有很认真的学好C语言,所以我这个学期更希望学好java,java方面还是挺有趣的, ...

  10. JDK的下载与Java运行环境

    JDK简介 什么是JDK JDK是Java Development Kit的缩写,意思是Java开发工具包.JDK就好比作人的心脏,人没有了心脏,生命也就失去存在的意义.Java也一样,JDK就是它的 ...