首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在可滚动的div中冻结html表的第一列和最后一列?

要在可滚动的div中冻结HTML表的第一列和最后一列,可以使用CSS样式和JavaScript代码来实现。以下是一个简单的示例:

HTML代码:

代码语言:html
复制
<div class="table-wrapper">
  <div class="table-scroll">
   <table>
     <thead>
        <tr>
          <th>Header 1</th>
          <th>Header 2</th>
          <th>Header 3</th>
          <th>Header 4</th>
        </tr>
      </thead>
     <tbody>
        <tr>
          <td>Row 1, Cell 1</td>
          <td>Row 1, Cell 2</td>
          <td>Row 1, Cell 3</td>
          <td>Row 1, Cell 4</td>
        </tr>
        <tr>
          <td>Row 2, Cell 1</td>
          <td>Row 2, Cell 2</td>
          <td>Row 2, Cell 3</td>
          <td>Row 2, Cell 4</td>
        </tr>
        <tr>
          <td>Row 3, Cell 1</td>
          <td>Row 3, Cell 2</td>
          <td>Row 3, Cell 3</td>
          <td>Row 3, Cell 4</td>
        </tr>
        <tr>
          <td>Row 4, Cell 1</td>
          <td>Row 4, Cell 2</td>
          <td>Row 4, Cell 3</td>
          <td>Row 4, Cell 4</td>
        </tr>
      </tbody>
    </table>
  </div>
</div>

CSS代码:

代码语言:css
复制
.table-wrapper {
  position: relative;
  overflow: auto;
}

.table-scroll {
  position: relative;
  width: 100%;
  overflow: auto;
}

.table-scroll table {
  width: 100%;
  min-width: 1200px;
  border-collapse: separate;
  border-spacing: 0;
}

.table-scroll th,
.table-scroll td {
  padding: 5px 10px;
  border: 1px solid #ccc;
  background-color: #fff;
  vertical-align: top;
}

.table-scroll thead th {
  position: sticky;
  top: 0;
  background-color: #f0f0f0;
  z-index: 1;
}

.table-scroll tfoot td {
  position: sticky;
  bottom: 0;
  background-color: #f0f0f0;
  z-index: 1;
}

.table-scroll tbody td:first-child,
.table-scroll thead th:first-child {
  position: sticky;
  left: 0;
  background-color: #f0f0f0;
  z-index: 1;
}

.table-scroll tbody td:last-child,
.table-scroll thead th:last-child {
  position: sticky;
  right: 0;
  background-color: #f0f0f0;
  z-index: 1;
}

这个示例中,我们使用了CSS的position: sticky属性来冻结表格的第一列和最后一列。同时,我们使用了overflow: auto属性来使表格可滚动。

需要注意的是,position: sticky属性在某些浏览器中可能不支持,因此需要使用JavaScript代码来实现冻结功能。具体实现方式可以参考以下链接:

推荐的腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

浅析瀑布流布局及其原理视频_jquery瀑布流布局

,接下来我们就是要用js去计算一页能有多少列图片以及如何在一列里面插入新图片。...当你知道某一列left时候,相当于就知道了在它下面插入图片时,图片如何定位到这一列了,只要图片left值是一样,那么图片自然就插入到里面了 实现代码如下: var data=[ {"src...;i++){ // 当i<column时,说明在第一行,把盒子高度存入到数组里 if(i<column){ arr[i]=boxes.eq(i).height()+40 } // 否则就是第二行,开始按最小高度插入图片到...){ var minindex=arr.indexOf(minheight) return minindex } // 判断是否在底部函数 function getBottom(wrap){ // 获取最后一列高度滚动高度...+窗口高度,如果长一列高度比窗口+滚动高度要小,说明到底了需要追加 var documentHeight=$(window).height(); var scrollHeight=$(window

1.4K20

table固定表头,tbody滚动条样式设置以及填几个坑

工作或许会用到 table 表格固定表头, tbody 滚动效果。为了方便我这里直接用 Bootstrap 表格样式。 ?...比较常用方法是,将 table thead tbody 拆分成两个表格,用 div 包起来,给 div 设置固定高度 overflow: auto; 属性(其实只给 tbody table...      此外,要给 table 添加一个 table-layout: fixed; 属性:使宽由表格宽度宽度设定。其他属性参考这篇文章。...至于对齐,可以使用 固定宽度,只需要给第一行设置一个宽度,下面的会自动与之对齐。如果表格宽度是 100% ,可以给前几列固定宽度,最后一个不设置,使其宽度自适应。...::-webkit-resizer 某些元素corner部分部分样式(:textarea拖动按钮) 语法: ::-webkit-scrollbar { styles here } 例子: 直接隐藏滚动

13.5K20
  • angular浏览器兼容性问题解决方案

    问题:edge浏览器下,固定边框消失 原因:ng-zorro-antd表格组件使用nzLeftnzRight指令固定表格,这两个指令实现css3标签: position: -webkit-sticky...针对Edge浏览器降级处理,与IE浏览器效果一致,无固定,整体横向滚动。 自定义实现固定,不使用组件固定实现,通过使用position: absolute;这种方式来实现表格固定。....fixed-table { width: 1300px; /* 可由th,td动态扩充,也指定宽度 */ border-collapse: collapse; } 最后一个最核心问题,就是固定实现了...,非常简单,将表格一列设置成绝对定位,在设置了绝对定位后,该会脱离原来文档流,表格少了一列,所以需要加一个背景板来保证表格能够给这个固定留出一个位置。...HTML代码大致如下,这个fixed-col可以为固定样式,也可以设置成背景板样式,demo是用其指定了固定样式。

    3K30

    Spread for Windows Forms快速入门(3)---行列操作

    开发人员可以定义用户与行交互,如是否可以更改行或大小、是否可以移动行或冻结指定行或、在行或查找数据等。 更改行或大小 你可以允许用户重新调整表单中行或大小。...例如: fpSpread1.Sheets(0).Columns(1,5).Remove() 设置固定冻结)行或 你可以冻结表单行或(使其不可滚动)。...无论鼠标如何滚动冻结前导行或前导都会在视图顶部或最左端显示。无论鼠标如何滚动冻结尾行或尾都会在视图底部或最右端显示。 下列图表显示了一个冻结尾行在视图中显示位置。 ?...有关冻结属性包括: FrozenRowCount FrozenColumnCount FrozenTrailingColumnCount FrozenTrailingRowCount 冻结行或在运行时是不可以滚动...尾冻结冻结行在每一页底部右部不会被重复打印,作为最后一行或最后一列打印一次。 前导行前导可以被重复打印。

    2.4K60

    VBA专题10-2:使用VBA操控Excel界面之设置工作

    高度 示例代码: '修改活动窗口中公式栏高度 Application.FormulaBarHeight= 3 '默认高度是1 滚动条 隐藏取消隐藏滚动条 示例代码: '隐藏取消隐藏所有打开工作簿滚动条...ActiveWindow .DisplayVerticalScrollBar = False '隐藏 .DisplayVerticalScrollBar = True '取消隐藏 End With 滚动一行或一列...= 8 如果活动窗口没有被拆分成窗格,那么行或滚动效果是明显清楚。...如果要指定滚动窗格,可以使用类似下面的语句,例如,在第2个窗格滚动到距离最左侧10: ActiveWindow.Panes(2).ScrollColumn= 10 如果拆分窗格被冻结,那么ScrollRow...ScrollColumn属性将把冻结区域排除在外,仅影响没有被冻结区域。

    4.7K40

    使用antd表格组件实现日程

    前言 20多天前,遇到一个日程业务需求,可以动态增加、对单元格进行合并,结合公司jsp项目的已有功能完成单元格增、删、改操作。...最后实现效果如下所示,实现代码请移步:react-antd-schedule/index.html image-20201119175256753 动态增加 这个日程用户可以通过点增加图标来增加一列日程...,此时我们就需要往表格头部增加一列数据,一开始我觉得只要往antdcolumnsdataSource添加一条数据就行了,如下所示: const App = () => { const...,啪一下,很快啊~新增加一列被渲染上去了,我大E了啊,antd不讲武德啊。...,由于添加数据时接口需要传当前点击是哪一列,刚才补全数据是不包含wz字段,因此我们需要再遍历一次数据,把wz字段加上去,代码如下: // 表格数据渲染函数 const

    3.7K20

    面试题必备-web页面基础

    rows:多行输入域行数 其他语义化标签 div盒子 俗称盒子,division分割 在网页制作过程,可以把一些独立逻辑部分划分出来,放在一个div标签,这个div标签作用就是相当于一个容器...什么是逻辑部分,它是页面上相互关联一组元素,网页独立栏目版块,就是一个典型逻辑部分。...网页由上到下,由内到外 div,header,footer,nav,article,aside等标签多用于模块划分 css全称为层叠样式,它主要用于定义HTML内容在浏览器内显示样式,文字大小,...css代码通常存放在style标签内 css样式由选择符和声明组成,而声明由属性值组成 选择符{属性:值} 选择符,叫选择器 css放置 直接书写在标签style属性,不建议使用 内联样式...opacity opacity:0.3 可见性:visibillity visibility: hidden visible 元素可见 hidden 元素不可见 collapse:当在表格元素中使用时,此值删除一行或一列

    2.5K10

    Excel?最强国产开源在线表格 Luckysheet 走红GitHub!

    Luckysheet具备了大部分Excel常用功能,比如文字与单元格样式调整与公式使用等。...此外,因为Luckysheet采用纯JavaScript编写,因此它可以嵌入到任何前端项目或应用程序,便于实现集成自动化。...文件一个sheet数据luckysheetfile[0]结构如下: { "name": "Cell", //工作名称 "color": "", //工作颜色 "index...": 0, //左右滚动条位置 "scrollTop": 315, //上下滚动条位置 "luckysheet_select_save": [], //选中区域 "luckysheet_conditionformat_save...console查看 luckysheet.getluckysheetfile() 可以看到完整设置 [{shee1}, {sheet2}, {sheet3}] 使用方法 第一步,引入依赖,有2种方式

    7.7K10

    Excel集成网页控件,内嵌于Excel单元格区域,可加载任意网页

    使用与EasyShuForPPT同样底层网页控件,故同样实现在线、离线、登录与否等一切只要是html网页显示。...其实现原理是利用VSTO插件特有的并且是Excel开发特有的,在工作范围内使用自定义控件方式,让插件插入自定义控件,而自定义控件可以是.net开发里winform窗体任意形式自定义控件,插入图片时为...通过在网页控件鼠标右键弹出上下文菜单,可供满足上述需求。 关于冻结单元格区域,这里简单说明下,在不作冻结默认情况下,鼠标滚动操作是对Excel工作单元格区域右侧滚动滚动操作。...而当需要保留到网页控件当前网页鼠标滚轮激发操作普通网页有右侧滚动条时,会滚动网页位置特殊网页EasyShu生成ECharts图表网页,滚动操作有放大缩小矢量地图作用。...此时选择上下文菜单第一项【冻结单元格区域】,即可屏蔽Excel鼠标滚动操作,让网页滚动生效,同样地第二项【取消冻结单元格区域】,即恢复Excel默认效果。

    1.2K30

    七个帮助你处理Web页面层布局jQuery插件

    布局可以创建任何你想要UI外观; 从简单标题或侧边栏到具有工具栏,菜单,帮助面板,状态栏,子表单等复杂应用程序。集成并增强其他UI小部件,选项卡,手风琴对话框,以创建丰富界面。 ?...插件可以读取另个一html,也可以是当前页面元素,目前比较流行导航菜单展现形式,特别是在手机端或者触屏页面,效果还是不错 demo:http://www.jq22.com/jquery-info343...您可以指定宽或静态数量。而且,当然,这很容易使用!Columnizer会将CSS类添加到它创建。每将有一个“”类名。第一列将有“第一”,最后一列将有“最后”。...创建JSON数据转化为HTML方法 引用jQuery库1.7或更高版本Columns插件文件,是将JSON数据创建为排序,搜索分页HTML表格简单方法。...所有你需要是提供数据,将完成其余。因为Columns动态地创建了所有必要HTML,所以唯一需要HTML是一个空HTML元素,比如一个标签,在初始化时使用相应id。 ?

    9.4K20

    HTML5+CSS3常见布局方式

    本文最后更新于 128 天前,其中信息可能已经有所发展或是发生改变。...若要使用弹性盒布局,需要先设置divdisplay:flex;即将div这个对象作为弹性伸缩盒显示(容器)。弹性容器默认在第一行显示,即它弹性属性是:flex-direction:row。...因此前端技术一般分为前端设计前端开发,前端设计一般可以理解为网站视觉设计,前端开发则是网站前台代码实现,包括基本HTMLCSS以及JavaScript/ajax,现在最新高级版本HTML5、...已经发展到5.0版了,得力于W3C建立标准规范,已普遍升级到了XHTML,XHTML 指扩展超文本标签语言(EXtensible HyperText Markup Language), XHTML...比如,如果想让链接字未点击时是蓝色,当鼠标移上去后字变成红色且有下划线,这就是一种风格。通过设立样式,可以统一地控制HTML各标志显示属性。级联样式可以使人更能有效地控制网页外观。

    1K20

    WPF 表格控件 ReoGrid 简单使用

    WPF 表格控件 ReoGrid 简单使用 目录 一、概述 二、安装 三、添加控件 四、加载 Excel 五、属性设置 六、支持触摸滚动 七、其它操作 1、显示隐藏 2、显示特定字体 八、资源链接...reoGridControl.CurrentWorksheet; worksheet.SelectionStyle = WorksheetSelectionStyle.None; // 选择范围样式; // 冻结...以上方法依次进行了如下操作:去除了选择样式,冻结了前两行第一列(固定表头),去除了行序号,设置只读,设置需要显示范围。...至于其它表格样式调整,直接在 Excel 调整即可(效果源文件略有差异): 六、支持触摸滚动 到目前为止,在触摸屏下,是只支持触摸滚动条进行内容滚动,直接在表格内容区进行触摸滚动是没有效果。...七、其它操作 1、显示隐藏 比如可以根据用户权限来显示隐藏,主要是使用 Worksheet ShowColumns () HideColumns () 方法来设置: 2、显示特定字体

    3.6K10

    理解CSS | 青训营笔记

    随着CSS在网站开发应用越来越广泛,W3C不断更新和完善了CSS规范,同时也涌现出了许多优秀CSS框架预处理器,Bootstrap、LESS、SASS等,使得CSS编写变得更加高效、灵活、重用.../* 指定该元素跨越第一列到第二 */ background-color: #f00; /* 设置背景色 */...grid-row: 2 / 3; /* 指定该元素跨越第二行到第三行 */ grid-column: 1 / 2; /* 指定该元素跨越第一列到第二...会从正常流删除,并不保留原本位置空白 position: fixed 固定定位,元素位置相对于viewport(浏览器窗口)进行偏移,不随滚动滚动,会从正常流删除,并不占据空间 position...,保持动画最后一个关键帧样式 backwards 在animation-delay 所指定时间段内,应用动画第一个关键帧样式 both 同时遵循 forwards backwards 规则

    9910

    C# winform DataGridView 常见属性

    ⑦ 禁止或者行Resize ⑧ 宽和行高以及高度行头宽度自动调整 ⑨ 冻结或行 ⑩ 顺序调整 ⑪ 行头单元格 ⑫ 剪切板操作 ⑬ 单元格ToolTip设置...3) 宽和行高最小值设定 // 第一列最小宽设定为 100 DataGridView1.Columns[0].MinimumWidth = 100; // 第一最小行高设定为 50..., 横向滚动时固定不随滚动滚动而左右移动。...2) 行冻结 DataGridViewRow.Frozen 属性为 True 时, 该行上面的所有行被固定, 纵向滚动时固定行不随滚动滚动而上下移动。...[C#] // 改变DataGridView1第一列头内容 DataGridView1.Columns[0].HeaderText = “第一列”; ⑫ DataGridView 剪切板操作 TOP

    3.8K40

    c# WinForm开发 DataGridView控件各种操作总结(单元格操作,属性设置)

    DataGridView1第一列头内容 DataGridView1.Columns[0].HeaderCell.Value = “第一列”; // 改变DataGridView1第一行行头内容...// 改变DataGridView1第一列头内容 DataGridView1.Columns[0].HeaderText = “第一列”; *********** DataGridView 单元格...e.Cancel = true; } } ********DataGridView 行、隐藏删除: 1) 行、隐藏 // DataGridView1第一列隐藏 DataGridView1...******DataGridView 冻结或行 1) 冻结 DataGridViewColumn.Frozen 属性为 True 时, 该左側全部被固定, 横向滚动时固定不随滚动滚动而左右移动...2) 行冻结 DataGridViewRow.Frozen 属性为 True 时, 该行上面的全部行被固定, 纵向滚动时固定行不随滚动滚动而上下移动。

    4.1K10

    js怎么让指定方法先后顺序_jquery固定table表头

    添加到滚动条容器   container.appendChild(bak);   // 将拷贝得到表格在删除数据行后添加到创建div   bak.appendChild(tb2);   ...// 设置创建divposition属性为absolute,即绝对定于滚动条容器(滚动条容器position属性必须为relative)   bak.style.position = “absolute...属性为0,即该div滚动条容器紧贴   bak.style.left = 0;   // 设置divtop属性为0,初期时滚动条位置为0,此属性与left属性协作达到遮盖原表头   bak.style.top...tr     trs.each(function (i) {//对每一个tr(每一行)进行处理       //获得每一行下面的所有的td,然后选中下标为0,即第一列,设置position为相对定位       ...//相对于父div左边距离为滑动距离,然后设置个背景颜色,覆盖住后面几列数据滑动到第一列下面的情况       //如果有必要也可以设置一个z-index属性       (this).children

    7.3K20
    领券