使用 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;
  }
}
相关推荐
奋斗吧程序媛1 分钟前
使用代理服务器的方式解决跨域问题
前端·javascript·vue.js
光影少年19 分钟前
CSS盒模型是什么?box-sizing有什么作用?
前端·css
Zhencode1 小时前
Vue核心运行时runtime-core之组件挂载流程
前端·javascript·vue.js
daols881 小时前
如何使用 vue 甘特图 vxe-gantt 渲染显示多行任务,预计完成日期和实际完成日期多条任务条
vue.js·甘特图·vxe-gantt
雾岛心情1 小时前
【Html&CSS】网页设计中的Node.JS 安装
css·html
前端 贾公子2 小时前
vue3 组件库的设计和实现原理 (下)
前端·javascript·vue.js
Hello.Reader2 小时前
Nuxt 4.2 + Tauri 2 接入指南把 Vue 元框架“静态化”后装进桌面/移动端
前端·javascript·vue.js
日光倾2 小时前
【Vue.js 入门笔记】NPM入门
vue.js·笔记·npm
pas1362 小时前
47-mini-vue 升级monorepo管理项目
前端·javascript·vue.js
之歆2 小时前
Vue3 + Vite2.0 全栈开发实践:从零到一构建通用后台管理系统-下
javascript·vue.js·vue3