使用 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;
  }
}
相关推荐
霸王蟹2 小时前
Webpack中loader的作用。
前端·javascript·vue.js·笔记·webpack·node.js
程序员小续5 小时前
React 多个 HOC 嵌套太深,会带来哪些隐患?
java·前端·javascript·vue.js·python·react.js·webpack
致微6 小时前
Vue项目 bug 解决
前端·vue.js·bug
我自纵横20238 小时前
事件处理程序
开发语言·前端·javascript·css·json·ecmascript
我是小路路呀8 小时前
css 文字换行每一个字渐变
前端·css
胡八一9 小时前
使用 Less 实现 PC 和移动端样式适配
前端·css·less
阿丽塔~10 小时前
Vue2/Vue3异同整理
vue.js
七月的尾巴←_←10 小时前
Java8+Spring Boot + Vue + Langchain4j 实现阿里云百炼平台 AI 流式对话对接
vue.js·spring boot·阿里云
CsharpDev-奶豆哥10 小时前
使用JS+HTML+CSS编写提词器实例
javascript·css·html
土豆丶杨11 小时前
vue3+electron 桌面应用初始化
javascript·vue.js·electron