使用 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 小时前
React和Vue的区别?
前端·vue.js·react.js
何中应13 小时前
<el-tag>标签使用
前端·vue.js·elementui
神仙别闹1 天前
基于NodeJS+Vue+MySQL实现一个在线编程笔试平台
前端·vue.js·mysql
雨雨雨雨雨别下啦1 天前
Vue案例——面经
前端·javascript·vue.js
myNameGL1 天前
ArkTs核心语法
前端·javascript·vue.js
简单不容易1 天前
vue一次解决监听H5软键盘弹出和收起的兼容问题
javascript·vue.js
滕青山1 天前
在线图片压缩工具核心JS实现
前端·javascript·vue.js
代码煮茶1 天前
Pinia 状态管理实战 | 从 0 到 1 搭建 Vue3 项目状态层(附模块化 / 持久化)
前端·vue.js
angerdream1 天前
https://editor.csdn.net/md/?articleId=159120195
javascript·vue.js
WayneX1 天前
Vue 3 + TypeScript + Vite 组件库搭建,自助式生成相应组件文档
前端·javascript·vue.js