使用 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;
  }
}
相关推荐
coding随想11 小时前
深入Modernizr源码:揭秘CSS伪类检测的底层逻辑
前端·css
奋斗吧程序媛11 小时前
vue3初体验(1)
前端·javascript·vue.js
全马必破三11 小时前
Vue 和 React 的区别
前端·vue.js·react.js
东东51611 小时前
ssm机场网上订票系统 +VUE
java·前端·javascript·vue.js·毕设
东东51612 小时前
基于SSM的宠物医院预约挂号系统的设计与实现vue
java·前端·javascript·vue.js·毕设
黑贝是条狗12 小时前
mormor2与vue搭建一个博客系统
前端·javascript·vue.js
南夏一木子12 小时前
Vue学习 —— Axios异步通信
前端·vue.js·学习
程序员林北北12 小时前
【前端进阶之旅】50 道前端超难面试题(2026 最新版)|覆盖 HTML/CSS/JS/Vue/React/TS/ 工程化 / 网络 / 跨端
前端·javascript·css·vue.js·html
Zhencode1 天前
Vue3响应式原理之ref篇
vue.js
小疙瘩1 天前
element-ui 中 el-upload 多文件一次性上传的实现
javascript·vue.js·ui