el-table二次封装实现自适应页面(CSS)

问题背景

在使用各种表格的时候,会因为不同电脑的显示预设不同,即便是1080*1920的屏幕,有默认显示125%的,或是100%的,通常我们只能设置给定的height或者maxheight,这时候就产生了表格高度的问题。

以1080P为例子

125%下的页面情况

100%下的页面情况

为此希望解决这种下方留白以及需要为每个页面去设置高度的麻烦,这边使用的是flex布局来进行解决(当然也可以使用grid的fr)

解决方案

下给出简单的布局示意图

红框作为main,蓝色块为选择表单块为form,绿色为表格块flexTable 下面给出实例HTML结构与css代码

html 复制代码
<div class='main'>
<form></form>
<div class='flexTable'>
<el-table height='100%'></el-table>
</div>
</div>
css 复制代码
.main{
display:flex;
flex-direction:column;
height:100%;
}
.flexTable{
flex:1;
}

核心思想就是利用flex-grow来让flexTable这块自适应填充满页面,内部的el-table也可以通过100%来获取父盒子的高度,进而实现不同页面自适应效果。

不足

如果在同一设备上进行缩小后再放大,此时的flexbox处于一种溢出状态(出现滚动条),高度仍然为之前缩小到最小的高度,需要刷新后才会回到正常状态

相关推荐
weixin199701080162 分钟前
义乌购商品详情页前端性能优化实战
前端·性能优化
学以智用8 分钟前
Vue3 + Vue Router 4 完整示例(可直接运行)
前端·vue.js
程序员小李白10 分钟前
vue2基本语法详细解析(2.7条件渲染)
开发语言·前端·javascript
SuperEugene11 分钟前
Vue3 项目目录结构规范:按业务域划分,新人快速上手|项目规范篇
前端·javascript·vue.js
悟空瞎说12 分钟前
# 10年前端血坑:Canvas drawImage画不出图?90%的人栽在这几步
前端
qibmz15 分钟前
新电脑安装 nvm 卡住?无需修改配置文件,一行命令完美解决!
前端
遗憾随她而去.26 分钟前
高德地图自定义点标记: SVG vs HTML+CSS两种方案
前端·css
陕西小伙伴网络科技有限公司27 分钟前
kettle单转换实现分页查询
开发语言·前端·javascript
踩着两条虫30 分钟前
低代码 + AI,到底是生产力革命,还是下一代“技术债务”?
前端·人工智能·低代码
南知意-1 小时前
cloud-app-admin:一款现代化、开箱即用的 Vue 3 后台管理模板
前端·javascript·vue.js·开源·开源项目