使用 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;
  }
}
相关推荐
前端切图崽_小郭13 小时前
虚拟滚动:静态 vs 动态的核心差异与实现?
vue.js
白鲸开源15 小时前
Apache SeaTunnel Zeta Engine 的 Basic Auth 是怎么工作的?
java·vue.js·github
卤蛋fg615 小时前
vue 甘特图 vxe-gantt 的使用(四):周视图的渲染
vue.js
卤蛋fg615 小时前
vue 甘特图 vxe-gantt 的使用(三):月视图的渲染
vue.js
卤蛋fg617 小时前
vue 甘特图 vxe-gantt 的使用(一):年视图的渲染
vue.js
前端开发爱好者18 小时前
支持 110 种文件预览!兼容 Vue、React、Svelte!
前端·javascript·vue.js
玄玄子21 小时前
CSS 浮动引起父元素高度塌陷
前端·css
秋天的一阵风21 小时前
Vue 3 里被严重低估的 API:InjectionKey
前端·javascript·vue.js
徐小夕2 天前
万字拆解 JitWord:企业级实时协同文档底层架构 + 大模型 AI 融合完整实践
前端·vue.js·github
用户83134859306982 天前
Cesium实现雾气效果:按钮一键控制打开/关闭雾气效果,滑块拖动实时控制雾气浓度
vue.js·cesium