精华内容
下载资源
问答
  • EXCEL中如何固定工作表头...快来参加~显示:选中第三行--点击窗口--冻结 打印:点击文件选项,选择页面设置,按下工作表选项卡,点击打印区域里的第一个框顶端标题行,然后在出现的选取框的提示下选中第一和第二行,

    EXCEL中如何固定工作表头

    2009-01-04 11:39wsh_a | 分类:办公软件 | 浏览104868次
    我想把前两行在每页上都显示该怎么办
    分享到:
    2009-01-04 11:53提问者采纳


    显示:选中第三行--点击窗口--冻结 

    打印:点击文件选项,选择页面设置,按下工作表选项卡,点击打印区域里的第一个框顶端标题行,然后在出现的选取框的提示下选中第一和第二行,点击确定以可以了
    展开全文
  • 近期工作中,碰到甲方需求:给一个bootstrap table表格,增加表头和第一列不随滚动条动而变化。即:要求固定表头和第一列。 官网上给的例子,就那么配置了几项,轻松加随意的达到效果。然而实际开发中,却是颇费了...

    近期工作中,碰到甲方需求:给一个bootstrap table表格,增加表头和第一列不随滚动条动而变化。即:要求固定表头和第一列。

    官网上给的例子,就那么配置了几项,轻松加随意的达到效果。然而实际开发中,却是颇费了一番周折。好像我之前有个同事没解决这个需求,客户就交给我了。

    A.先说固定表头:
    极其简单:给table加一个height属性,不管是HTML加还是js里加,都一样~
    然后照官网的做了后,运行页面,你会发现TMD根本就不是那样的!!表头固定,时好是不好,骗子!
    怎么回事呢?

    翻找诸多资料,终于找到原因:我们项目里引用的bootstrap-table.js,里面源码:

    if (this.options.showHeader && this.options.height) {
                this.$tableHeader.show();
                //注释掉下面两行 取消表头初始化解决表头和内容不对齐问题
                //this.resetHeader();
                //padding += this.$header.outerHeight();
    }
    

    不知道写这个的兄弟有没有自己测试过,反正我注释了之后,确实表头和数据对齐了,但是表头固定功能消失了.
    将其反注释,对不齐了? 小问题:

    .fht-cell{width:120px!important;}
    

    修改了这2处,应该表头🆗了。(我说之前,怎么死活搞不定,源码都有问题,还玩个蛋啊!)。

    B. 接着说固定第一列:
    照官网的,加个$('#table1').bootstrapTable('destroy'); $('#table1').bootstrapTable({。。。。 fixedColumns: true, fixedNumber: 1 //固定列数... });

    这里不要机械照抄,看好中英文标点。

    改好保存,运行页面,卧槽,神马情况,表格都歪三扭四,搞毛啊。又蒙了·~

    网上找大神修改过 的源码:bootstrap-table-fixed-columns.css

    .fixed-table-header-columns,
    .fixed-table-body-columns {
        position: absolute;
        background-color: #fff;
        display: none;
        box-sizing: border-box;
        overflow: hidden;
    }
    
    .fixed-table-header-columns .table,
    .fixed-table-body-columns .table {
        border-right: 1px solid #ddd;
    }
    
    .fixed-table-header-columns .table.table-no-bordered,
    .fixed-table-body-columns .table.table-no-bordered {
        border-right: 1px solid transparent;
    }
    
    .fixed-table-body-columns table {
        position: absolute;
        animation: none;
    }
    
    .bootstrap-table .table-hover > tbody > tr.hover > td{
        background-color: #f5f5f5;
    }
    

    bootstrap-table-fixed-columns.js

    /*
    * v2.0
    * fixed by LX.
    * 官网源码修改版,以增加对IE和谷歌的支持.
    */
    (function ($) {
        'use strict';
    
        $.extend($.fn.bootstrapTable.defaults, {
            fixedColumns: false,
            fixedNumber: 1
        });
    
        var BootstrapTable = $.fn.bootstrapTable.Constructor,
            _initHeader = BootstrapTable.prototype.initHeader,
            _initBody = BootstrapTable.prototype.initBody,
            _resetView = BootstrapTable.prototype.resetView;
    
        BootstrapTable.prototype.initFixedColumns = function () {
            this.$fixedHeader = $([
                '<div class="fixed-table-header-columns">',
                '<table>',
                '<thead></thead>',
                '</table>',
                '</div>'].join(''));
    
            this.timeoutHeaderColumns_ = 0;
            this.$fixedHeader.find('table').attr('class', this.$el.attr('class'));
            this.$fixedHeaderColumns = this.$fixedHeader.find('thead');
            this.$tableHeader.before(this.$fixedHeader);
    
            this.$fixedBody = $([
                '<div class="fixed-table-body-columns">',
                '<table>',
                '<tbody></tbody>',
                '</table>',
                '</div>'].join(''));
    
            this.timeoutBodyColumns_ = 0;
            this.$fixedBody.find('table').attr('class', this.$el.attr('class'));
            this.$fixedBodyColumns = this.$fixedBody.find('tbody');
            this.$tableBody.before(this.$fixedBody);
        };
    
        BootstrapTable.prototype.initHeader = function () {
            _initHeader.apply(this, Array.prototype.slice.apply(arguments));
    
            if (!this.options.fixedColumns) {
                return;
            }
    
            this.initFixedColumns();
    
            var that = this, $trs = this.$header.find('tr').clone();
            $trs.each(function () {
                $(this).find('th:gt(' + (that.options.fixedNumber - 1) + ')').remove();
            });
            this.$fixedHeaderColumns.html('').append($trs);
        };
    
        BootstrapTable.prototype.initBody = function () {
            _initBody.apply(this, Array.prototype.slice.apply(arguments));
    
            if (!this.options.fixedColumns) {
                return;
            }
    
            var that = this,
                rowspan = 0;
    
            this.$fixedBodyColumns.html('');
            this.$body.find('> tr[data-index]').each(function () {
                var $tr = $(this).clone(),
                    $tds = $tr.find('td');
    
                //$tr.html('');这样存在一个兼容性问题,在IE浏览器里面,清空tr,$tds的值也会被清空。
                //$tr.html('');
                var $newtr = $('<tr></tr>');
                $newtr.attr('data-index', $tr.attr('data-index'));
                $newtr.attr('data-uniqueid', $tr.attr('data-uniqueid'));
                var end = that.options.fixedNumber;
                if (rowspan > 0) {
                    --end;
                    --rowspan;
                }
                for (var i = 0; i < end; i++) {
                    $newtr.append($tds.eq(i).clone());
                }
                that.$fixedBodyColumns.append($newtr);
    
                if ($tds.eq(0).attr('rowspan')) {
                    rowspan = $tds.eq(0).attr('rowspan') - 1;
                }
            });
        };
    
        BootstrapTable.prototype.resetView = function () {
            _resetView.apply(this, Array.prototype.slice.apply(arguments));
    
            if (!this.options.fixedColumns) {
                return;
            }
    
            clearTimeout(this.timeoutHeaderColumns_);
            this.timeoutHeaderColumns_ = setTimeout($.proxy(this.fitHeaderColumns, this), this.$el.is(':hidden') ? 100 : 0);
    
            clearTimeout(this.timeoutBodyColumns_);
            this.timeoutBodyColumns_ = setTimeout($.proxy(this.fitBodyColumns, this), this.$el.is(':hidden') ? 100 : 0);
        };
    
        BootstrapTable.prototype.fitHeaderColumns = function () {
            var that = this,
                visibleFields = this.getVisibleFields(),
                headerWidth = 0;
    
            this.$body.find('tr:first-child:not(.no-records-found) > *').each(function (i) {
                var $this = $(this),
                    index = i;
    
                if (i >= that.options.fixedNumber) {
                    return false;
                }
    
                if (that.options.detailView && !that.options.cardView) {
                    index = i - 1;
                }
    
                that.$fixedHeader.find('th[data-field="' + visibleFields[index] + '"]')
                    .find('.fht-cell').width($this.innerWidth());
                headerWidth += $this.outerWidth();
            });
            this.$fixedHeader.width(headerWidth).show();
        };
    
        BootstrapTable.prototype.fitBodyColumns = function () {
            var that = this,
                top = -(parseInt(this.$el.css('margin-top'))),
                // the fixed height should reduce the scorll-x height
                height = this.$tableBody.height() - 18;
            debugger;
            if (!this.$body.find('> tr[data-index]').length) {
                this.$fixedBody.hide();
                return;
            }
    
            if (!this.options.height) {
                top = this.$fixedHeader.height() - 1;
                height = height - top;
            }
    
            this.$fixedBody.css({
                width: this.$fixedHeader.width(),
                height: height,
                top: top + 1
            }).show();
    
            this.$body.find('> tr').each(function (i) {
                that.$fixedBody.find('tr:eq(' + i + ')').height($(this).height() - 0.5);
                var thattds = this;
                debugger;
                that.$fixedBody.find('tr:eq(' + i + ')').find('td').each(function (j) {
                    $(this).width($($(thattds).find('td')[j]).width() + 1);
                });
            });
    
            // events
            this.$tableBody.on('scroll', function () {
                that.$fixedBody.find('table').css('top', -$(this).scrollTop());
            });
            this.$body.find('> tr[data-index]').off('hover').hover(function () {
                var index = $(this).data('index');
                that.$fixedBody.find('tr[data-index="' + index + '"]').addClass('hover');
            }, function () {
                var index = $(this).data('index');
                that.$fixedBody.find('tr[data-index="' + index + '"]').removeClass('hover');
            });
            this.$fixedBody.find('tr[data-index]').off('hover').hover(function () {
                var index = $(this).data('index');
                that.$body.find('tr[data-index="' + index + '"]').addClass('hover');
            }, function () {
                var index = $(this).data('index');
                that.$body.find('> tr[data-index="' + index + '"]').removeClass('hover');
            });
        };
    
    })(jQuery);
    
    

    改好这个源文件,再次尝试OK。不得不说,网上大神还是非常多的,而且他们也爱分享,这当然是个好习惯,希望you too。

    对不齐?

    .fixed-table-header-columns .table thead tr th {
        height: 64px;
    }
    

    试试这个。

    C.最后就是不同浏览器的兼容性了,和细节的完善了,这点见仁见智。按照各自项目的要求,做吧~ 我就不一一细说啦!

    呼~纯手打,这么多字。MY GOD!

    参照:https://segmentfault.com/a/1190000018411239
    https://www.cnblogs.com/landeanfen/p/7095414.html
    https://www.cnblogs.com/Man-Dream-Necessary/p/11151139.html
    感谢上述文章的作者,给了我极大的启发!

    展开全文
  • 大家好,昨天有朋友问我,她想要一个表格中的表头固定,不管往下拉到几行表头都能看到,需要怎么设置?这个小技巧我一直以为大部分人都应该会,所以也就没有拿出来跟大家讲解,跟大家道个歉。让表格中特定的行列...

    大家好,昨天有朋友问我,她想要一个表格中的表头固定,不管往下拉到第几行表头都能看到,需要怎么设置?这个小技巧我一直以为大部分人都应该会,所以也就没有拿出来跟大家讲解,跟大家道个歉。

    让表格中特定的行列固定不动,这个功能在工作中经常能遇到,对于一些朋友来说应该是见怪不怪了。这个功能在工作中也是有很必要的用处的,比如我们在核对数据的时候,如果行列太多,不将表头标题固定的话,很容易核对错误,也非常不方便。

    如上面这样一张图片,当我们往下拖动表格的时候,表头的栏目就看不见了,如果我们看到下面的数据就很难对号入座了,如果不会冻结窗格,那老板要你核对一个表格数据你就要哭了。

    但是你接下来能够仔细看完今天的内容,你就能够让表格设置成如上图这种格式,不管往下拉到第几行,也可以轻松让每一个数据对号入座,准确核对。

    下面我们来学习常用的几种冻结表格方法,请大家务必仔细认真阅读。

    第一种:冻结第一行

    菜单栏里依次找到【视图】-【冻结窗格】-【冻结首行】,如下图所示:

    也可以选中第二行,然后如上方法依次找到【视图】-【冻结窗格】-【冻结窗格】,效果也是一样的,如下图所示:

    第二种:冻结第一列

    冻结第一列和冻结第一行的方法一样,【视图】-【冻结窗格】-【冻结首列】,如下图所示:

    你也可以选中B列后,点击【视图】-【冻结窗口】-【冻结窗格】,操作和上面一样,如下图:

    第三种:冻结多行或者多列

    如果我们要冻结前两行,那么我们就选中第三行,然后点击【视图】- 【冻结窗格】-【冻结窗格】,如下图演示所示:

    解析:冻结多列的方法和冻结多行是一样的,这里就不多做演示了。如需冻结前N行或者前N列,那就选中N+1行或者N+1列,然后点击视图下的冻结窗格按钮。

    上面冻结行和列的方法相信大家应该都学会了,那么问题来了,如果需要同时冻结行和列怎么做?比如我们需要第一行和第一列同时固定不动,应该怎么设置?聪明的朋友肯定会说,同时选中第二行和第二列,然后点击冻结窗格就好了,真的是这样吗?我们来看一下下图的操作结果。

    如上图实际操作证明,这种方法是不能实现同时冻结行和列的,这种方法的结果只能冻结最后选中的行或者列,也就是说,如果我们先选行,后选列,最后冻结的是列,相反也是一样,大家可以自己试一下。

    如果我们需要冻结A列和第一行,正确操作方法,鼠标选中B2单元格,然后选择【视图】-【冻结窗格】就可以了,如下图所示,非常简单。

    今天的课程又讲完了,是不是非常简单呢?大家学会了吗?还没学会的朋友赶紧跟着自己动手操作几遍,学会的朋友也别忘了关注我和分享这篇文章,小编可是饿着肚子给大家写的这篇教程,大家如果有问题欢迎给我评论留言,我们下期见吧,拜拜~~

    展开全文
  • 在wps表格中查看数据内容较多的工作表时,拖动滚动条就看不到标题行了,这时我们就不清楚每一列数据分别代表着什么。如何才能固定某行或某列,方便查看人员查看呢?今天给大家分享一个实用的小功能-“冻结窗格”,...

    在wps表格中查看数据内容较多的工作表时,拖动滚动条就看不到标题行了,

    这时我们就不清楚每一列数据分别代表着什么。如何才能固定某行或某列,方便查看人员查看呢?

    今天给大家分享一个实用的小功能-“冻结窗格”,例如这张表格;

    e1a76d84218822b47a49a90648197256.gif
    3e276fedcc3f9d1048d45f28cbb0ff4e.png

    ■在菜单栏中找到“开始”,点击“冻结窗格”,一共有三种模式;

    第一种为多行多列冻结,第二种是冻结首行,第三种是冻结首列。

    顾名思义,冻结首行首列就是把第一行或第一列固定住,直接点击即可设置成功。

    需要取消固定就再次点击“冻结窗格”-“取消冻结”即可;

    6ce1c7626c75bfe8f6d0400cdc306c4b.gif

    ■那么冻结首行首列以外的行列需要如何操作呢?

    如果要冻结某行,首先需要选中它下面的那行,再进行设置。

    比如我现在需要冻结“A1、A2”这两行,那么我必须选中“A3”单元格,

    点击“冻结窗格”-“冻结至第二行”,此时再拖动滚动条,前两行都不会被覆盖了;

    dd124c4e654d0f31c111d028925e789a.gif

    ■如果要同时冻结某行和某列,比如要同时冻结A2行和A1列。

    首先需要找到与它们共同交接的单元格,鼠标单击B3单元格,

    点击“冻结窗格”-“冻结至第2行A列”即可。

    a747f377aa76e7948f1127e83df249de.gif

    以上就是冻结窗格的作用和方法介绍,你掌握了吗~

    展开全文
  • 在Excel中有时候一个工作表中有很多数据,查看的时候往右拖动滚动条,第一列的标题列看不到了,往下拖动滚动条,第一行的标题行又看不到了,那么我们该如何根据需要在查看数据时,第一行、第一列或者指定区域一直...
  • 而且打印出来以后,仅第一张带有表头,其他的都没有表头,看上去很不方便。那么今天小编就带着大家操作一遍,如何让每页都带上表头。在操作之前呢,首先带大家熟悉一下如何调节打印的一般属性。我们点击左上角的文件...
  • 在日常工作中,我将遇到这样一个固定工作每个月,导入数据编制的业务同事GP数据库中的一个表;这听起来像一个非常简单的工作!但每次业务MM总是发送一个文件夹中,有30或40 (Excel文件。xlsx格式,字段名相同)。根据业务...
  • 第一部分 界面设计

    2013-10-22 23:10:34
    第一部分 界面设计 实例001 如何实现程序闪屏效果 实例002 如何实现程序窗口闪烁 实例003 如何制作吸附窗口程序 实例004 如何制作透明程序窗口 实例005 如何制作半透明程序窗口 实例006 如何制作不规则程序...
  • Go有什么优势可直接编译成可执行文件,不依赖任何东西,部署就是扔一个文件上去就完成了。这点非常重要,无论是个人开发还是工作中的很多任务,尤其在需要到服务器上跑的最方便了,不需要配置环境什么的,相比Python...
  • 打印表格是Excel最常用的功能之一,也是展示数据、...01.打印标题当工作表数据行很多,向下翻滚查看数据时,我们会采用冻结窗格功能把表格标题行固定第一行不动,方便对照表格内容。那么,在打印时,每一页纸上...
  • 表格如何冻结窗格

    2020-04-11 18:02:27
    在wps表格中查看数据内容较多的工作表时,拖动滚动条就看不到标题行了, 这时我们就不清楚每一列数据分别代表着什么。如何才能固定某行或某列,方便查看人员查看呢? 今天给大家分享一个实用的小功能-“冻结窗格”...
  • 自己的第一个数据透视.xls2.1轻松改变数据透视的整体布局.xls2.2使用逆向法设置显示数据透视的多个页字段数据项.xls2.3使用转移法设置显示数据透视的多个页字段数据项.xls2.4水平并排显示页面区域中的多...
  • 第一步:认识重复行和类重复行和列:选中工作表中单元格,点击工具栏中的,所表示的意思是把单元格锁定,锁定的单元格不能再编辑,设置重复行和列后,在预览效果图中不会显示,只有设置页面中勾选打印固定行和列后,...
  • iPhone开发秘籍(2版)--源代码

    热门讨论 2012-12-11 13:51:22
    第2章 构建第一个项目 28 2.1 创建新项目 28 2.2 用模板构建Hello World应用程序 29 2.2.1 创建新项目 29 2.2.2 Project窗口 30 2.2.3 Detail窗格 31 2.2.4 编辑器窗口 32 2.2.5 查看项目 32 2.2.6 打开视图...
  • 11.4.2 一个简单的基于函数的索引例子 414 11.4.3 只对部分行建立索引 422 11.4.4 实现有选择的唯一性 424 11.4.5 关于ORA-01743的警告 424 11.4.6 基于函数的索引小结 425 11.5 应用域索引 -1 11.6 关于索引...
  • 1.28 文件中的第一个声明就报出奇怪的语法错误,可我看没什么问题。这是为什么? 1.29 为什么我的编译器不允许我定义大数组,如doublearray[256][256]? 命名空间 1.30如何判断哪些标识符可以使用,哪些被保留了? ...
  • EXCEL 2007 宝典 附光盘文件

    热门讨论 2010-04-02 14:43:05
    mortgage loan.xlsx:一个演示如何使用一个工作表中的ActiveX控件的工作簿。 worksheet controls.xlsm:一个包含所有用于一个工作表的ActiveX控件的例子的工作簿。 Chapter 43 monitor a range.xlsm:一个包含VBA ...
  • 《你必须知道的495C语言问题》

    热门讨论 2010-03-20 16:41:18
    1.28 文件中的第一个声明就报出奇怪的语法错误,可我看没什么问题。这是为什么? 15 1.29 为什么我的编译器不允许我定义大数组,如double array[256][256]? 15 命名空间 15 1.30 如何判断哪些标识符可以使用,...
  • 1.28 文件中的第一个声明就报出奇怪的语法错误,可我看没什么问题。这是为什么? 15 1.29 为什么我的编译器不允许我定义大数组,如double array[256][256]? 15 命名空间 15 1.30 如何判断哪些标识符可以使用,...
  • 1.28 文件中的第一个声明就报出奇怪的语法错误,可我看没什么问题。这是为什么? 1.29 为什么我的编译器不允许我定义大数组,如double array[256][256]? 命名空间 1.30 如何判断哪些标识符可以使用,哪些被保留了?...
  • 书中针对每一个知识点列举了大量实例来说明该功能如何实现,全书共有超过500个精彩实例。  讲解通俗,步骤详细。通过通俗易懂的语言讲解SQL Server 2008的各个强大功能,并配以插图讲解和详细的步骤说明,帮助读者...
  • 1.28 文件中的第一个声明就报出奇怪的语法错误,可我看没什么问题。这是为什么?  1.29 为什么我的编译器不允许我定义大数组,如doublearray[256][256]?  命名空间  1.30如何判断哪些标识符可以使用,哪些被...
  • 1.28 文件中的第一个声明就报出奇怪的语法错误,可我看没什么问题。这是为什么? 44 1.29 为什么我的编译器不允许我定义大数组,如double array[256][256]? 44 命名空间 44 1.30 如何判断哪些标识符可以使用,...
  •  1.28 文件中的第一个声明就报出奇怪的语法错误,可我看没什么问题。这是为什么? 1.29 为什么我的编译器不允许我定义大数组,如doublearray[256][256]? 命名空间 1.30如何判断哪些标识符可以使用,哪些被保留...
  • 1.28 文件中的第一个声明就报出奇怪的语法错误,可我看没什么问题。这是为什么? 1.29 为什么我的编译器不允许我定义大数组,如double array[256][256]? 命名空间 1.30 如何判断哪些标识符可以使用,哪些被保留了?...
  • CSS网站布局实录 (二版)PDF版

    热门讨论 2012-12-10 18:46:01
    《CSS网站布局实录:基于Web标准的网站设计指南(2版)》内容提要: 本书是一本讲述基于Web标准的应用CSS进行网站布局设计与...感觉不是在看一本真金白银买来的书,而更象是偷看一个江湖上鲜见的手抄本……刺激! ——网友
  • 入门学习Linux常用必会60命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    hda1中的“1”代表hda的第一个硬盘分区 (partition),hda2代表hda的第二主分区,第一个逻辑分区从hda5开始,依此类推。此外,可以直接检查 /var/log/messages文件,在该文件中可以找到计算机开机后系统已辨认出来的...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 138
精华内容 55
关键字:

如何固定第一个工作表