html固定头和第一列简单例子

<!DOCTYPE html>

<html lang="zh">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>冻结第一行和第一列的表格</title>

<style>

/* 外层容器 */

.table-container {

width: 100%;

height: 300px; /* 设置高度,显示纵向滚动条 */

overflow: auto; /* 显示滚动条 */

position: relative;

}

table {

border-collapse: collapse;

width: 100%;

min-width: 800px; /* 设置最小宽度,显示横向滚动条 */

}

th, td {

border: 1px solid #ddd;

padding: 8px;

text-align: center;

}

/* 冻结第一行 */

thead {

position: sticky;

top: 0;

background-color: #f1f1f1;

z-index: 2;

}

/* 冻结第一列 */

td, th {

position: relative;

}

td:first-child, th:first-child {

position: sticky;

left: 0;

background-color: #f1f1f1;

z-index: 1;

}

</style>

</head>

<body>

<div class="table-container">

<table>

<thead>

<tr>

<th>姓名</th>

<th>年龄</th>

<th>城市</th>

<th>职业</th>

<th>邮箱</th>

<th>电话</th>

</tr>

</thead>

<tbody>

<tr>

<td>张三</td>

<td>28</td>

<td>北京</td>

<td>工程师</td>

<td>zhangsan@example.com</td>

<td>1234567890</td>

</tr>

<tr>

<td>李四</td>

<td>34</td>

<td>上海</td>

<td>设计师</td>

<td>lisi@example.com</td>

<td>2345678901</td>

</tr>

<tr>

<td>王五</td>

<td>25</td>

<td>广州</td>

<td>程序员</td>

<td>wangwu@example.com</td>

<td>3456789012</td>

</tr>

<tr>

<td>赵六</td>

<td>40</td>

<td>深圳</td>

<td>经理</td>

<td>zhaoliu@example.com</td>

<td>4567890123</td>

</tr>

<tr>

<td>孙七</td>

<td>29</td>

<td>成都</td>

<td>产品经理</td>

<td>sqi@example.com</td>

<td>5678901234</td>

</tr>

<tr>

<td>钱八</td>

<td>38</td>

<td>杭州</td>

<td>测试工程师</td>

<td>qianba@example.com</td>

<td>6789012345</td>

</tr>

<tr>

<td>刘九</td>

<td>45</td>

<td>武汉</td>

<td>销售</td>

<td>liujiu@example.com</td>

<td>7890123456</td>

</tr>

<tr>

<td>刘九</td>

<td>45</td>

<td>武汉</td>

<td>销售</td>

<td>liujiu@example.com</td>

<td>7890123456</td>

</tr>

<tr>

<td>刘九</td>

<td>45</td>

<td>武汉</td>

<td>销售</td>

<td>liujiu@example.com</td>

<td>7890123456</td>

</tr>

<tr>

<td>刘九</td>

<td>45</td>

<td>武汉</td>

<td>销售</td>

<td>liujiu@example.com</td>

<td>7890123456</td>

</tr>

<tr>

<td>刘九</td>

<td>45</td>

<td>武汉</td>

<td>销售</td>

<td>liujiu@example.com</td>

<td>7890123456</td>

</tr>

<tr>

<td>刘九</td>

<td>45</td>

<td>武汉</td>

<td>销售</td>

<td>liujiu@example.com</td>

<td>7890123456</td>

</tr>

<tr>

<td>刘九</td>

<td>45</td>

<td>武汉</td>

<td>销售</td>

<td>liujiu@example.com</td>

<td>7890123456</td>

</tr>

<tr>

<td>刘九</td>

<td>45</td>

<td>武汉</td>

<td>销售</td>

<td>liujiu@example.com</td>

<td>7890123456</td>

</tr>

<tr>

<td>刘九</td>

<td>45</td>

<td>武汉</td>

<td>销售</td>

<td>liujiu@example.com</td>

<td>7890123456</td>

</tr>

</tbody>

</table>

</div>

</body>

</html>

相关推荐
代码搬运媛4 小时前
Jest 测试框架详解与实现指南
前端
counterxing5 小时前
我把 Codex 里的 Skills 做成了一个 MCP,还支持分享
前端·agent·ai编程
wangqiaowq5 小时前
windows下nginx的安装
linux·服务器·前端
之歆6 小时前
DAY_12JavaScript DOM 完全指南(二):实战与性能篇
开发语言·前端·javascript·ecmascript
发现一只大呆瓜6 小时前
Vite凭什么这么快?3分钟带你彻底搞懂 Vite 热更新的幕后黑手
前端·面试·vite
Maimai108086 小时前
React如何用 @microsoft/fetch-event-source 落地 SSE:比原生 EventSource 更灵活的实时推送方案
前端·javascript·react.js·microsoft·前端框架·reactjs·webassembly
candyTong6 小时前
Claude Code 的 Edit 工具是怎么工作的
javascript·后端·架构
kyriewen8 小时前
产品经理把PRD写成“天书”,我用AI半小时重写了一遍,他当场愣住
前端·ai编程·cursor
humcomm8 小时前
元框架的工作原理详解
前端·前端框架
canonical_entropy8 小时前
Attractor Before Harness: AI 大规模开发的方法论
前端·aigc·ai编程