使用 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;
  }
}
相关推荐
難釋懷26 分钟前
Vue混入
前端·javascript·vue.js
訾博ZiBo29 分钟前
Vue3响应式高阶用法之toRaw()
javascript·vue.js·ecmascript
涵涵(互关)4 小时前
GoView各项目文件中的相关语法2
前端·javascript·vue.js
心中无石马4 小时前
uniapp引入tailwindcss4.x
前端·css·uni-app
焰火19994 小时前
[Vue]可重置的响应式状态reactive
前端·vue.js
源码宝5 小时前
基于 SpringBoot + Vue 的医院随访系统:技术架构与功能实现
java·vue.js·spring boot·架构·源码·随访系统·随访管理
老王以为5 小时前
为什么 React 和 Vue 不一样?
前端·vue.js·react.js
web打印社区5 小时前
2026最新Web静默打印解决方案,无插件无预览,完美替代Lodop
前端·javascript·vue.js·electron·pdf
Forever7_6 小时前
Vue 全局监控用户行为,最强方案!
vue.js
薯老板8 小时前
vue组件之间的通信
前端·vue.js