使用 flex 简单实现 table 自适应页面

效果

  • 保证页面其他模块宽度高度自适应,动态改变中部 table 的高度

  • 当页面整体宽度较小,顶部搜索模块高度自动撑开时,table 宽度动态变小,只展示 4 行数据。

  • 当页面整体宽度较大,顶部搜索模块没那么高,table 高度自动变大,展示 7 行数据。

实现

  • 利用 el-table 的固定表头的特性,设置 el-table 的高度为 100%
  • 再利用 flex-grow 的特性,设置 el-table 的父盒子属性为 flex-frow: 1,自动分配空间内的剩余高度
  • 关键代码
css 复制代码
// 最外层根组件
.validateForm {
  height: 100%;
  display: flex;
  flex-direction: column;
  // el-table 的父盒子 - 设置 flex-grow,还需要设置一个最小高,表示该元素参与高度分配
  .table {
    min-height: 10px;
    flex-grow: 1;
  }
}
相关推荐
布兰妮甜21 分钟前
Vue 视图不更新?常见赋值踩坑点汇总
前端·javascript·vue.js·vue踩坑·vue视图不更新
rising start34 分钟前
三、Vue3 模板语法
vue.js
zhedream1 小时前
十万级列表的跨页多选方案:el-table 踩坑与治理实践
vue.js·element
rising start2 小时前
二、Vue3 核心基础:API 对比、Setup 与响应式详解
前端·javascript·vue.js
我穿棉裤了3 小时前
解决el-form表单校验时显示的红色星号与文字对齐的问题
前端·javascript·vue.js
超人不会飞_Jay3 小时前
2026.6.4 Vue用户中心项目笔记
前端·vue.js·笔记
懂懂tty3 小时前
Vue3 编译优化
前端·javascript·vue.js
踩着两条虫3 小时前
VTJ.PRO v2.4.0 多人协作与 AI 批量识图实战评测
vue.js·人工智能·低代码·figma
低保和光头哪个先来3 小时前
源码篇 生命周期
前端·javascript·vue.js
ct9784 小时前
Vue 项目性能优化
前端·vue.js·性能优化