使用 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;
  }
}
相关推荐
微臣愚钝3 小时前
前端【8】HTML+CSS+javascript实战项目----实现一个简单的待办事项列表 (To-Do List)
前端·javascript·css·html
LCG元4 小时前
Vue.js组件开发-实现对视频预览
前端·vue.js·音视频
傻小胖4 小时前
shallowRef和shallowReactive的用法以及使用场景和ref和reactive的区别
javascript·vue.js·ecmascript
YoloMari4 小时前
组件中的emit
前端·javascript·vue.js·微信小程序·uni-app
customer086 小时前
【开源免费】基于SpringBoot+Vue.JS贸易行业crm系统(JAVA毕业设计)
java·vue.js·spring boot·后端·spring cloud·开源
追光少年33226 小时前
Learning Vue 读书笔记 Chapter 2
前端·javascript·vue.js·vue3
傻小胖8 小时前
vue3中自定一个组件并且能够用v-model对自定义组件进行数据的双向绑定
前端·javascript·vue.js
anyup_前端梦工厂10 小时前
浅析 CSS 中块级框,块容器框和块框
前端·css
每天吃饭的羊11 小时前
vue和reacts数据响应式的差异
前端·javascript·vue.js
睡不着的可乐12 小时前
深入理解若依RuoYi-Vue数据字典设计与实现
前端·javascript·vue.js·ruoyi