使用 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;
  }
}
相关推荐
Irene19912 分钟前
Vue 3 中,组合式 API 的 setup() 函数确实先于选项式 API 的生命周期钩子执行
vue.js·执行顺序·组合式 api·选项式 api
计算机学姐15 分钟前
基于SpringBoot的高校体育场馆预约系统【个性化推荐算法+数据可视化统计】
java·vue.js·spring boot·后端·mysql·信息可视化·推荐算法
只有干货33 分钟前
动态表单组件渲染并采集 展示vue component
javascript·vue.js·ecmascript
计算机程序设计小李同学35 分钟前
森林防火航空巡护任务管理系统
java·vue.js·人工智能·分类·数据挖掘
Irene199140 分钟前
Vue 3 中,unmounted 生命周期钩子会在组件实例被销毁并从 DOM 中移除后调用
vue.js·unmounted
weixin_584121431 小时前
vue3+elementui+js自定义穿梭框布局
javascript·vue.js·elementui
proud12121 小时前
使用thymeleaf生成PDF方案
javascript·css·pdf
梵得儿SHI1 小时前
Pinia 状态管理从入门到精通:基础 / 核心特性 / 多 Store / 持久化全实战(Vue2/Vue3 适配)
javascript·vue.js·ecmascript·pinia·态持久化存储方案·实战避坑指南·ue2/vue3项目开发
霍理迪3 小时前
CSS——背景样式以及雪碧图、渐变
前端·css
小二·10 小时前
前端监控体系完全指南:从错误捕获到用户行为分析(Vue 3 + Sentry + Web Vitals)
前端·vue.js·sentry