Element-ui的table中使用fixed后出现行混乱情况的解决

 更新时间:2023年10月20日 08:45:17   作者:尼古拉斯二嘎  
这篇文章主要介绍了Element-ui的table中使用fixed后出现行混乱情况的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Element-ui的table中使用fixed后出现行混乱

话不多说,先看看问题是什么

我们看到table左侧fixed的区域并没有延伸到表格底部,之前在用户拖拽表格时添加了方法this.$refs.headGroupTable.doLayout()来重置表格(headGroupTable是自定义组件名称,学过vue的都懂),但是在数据拿到后使用此方法并不能解决以上问题

解决方法

其实解决方法也很简单,我们打开浏览器看到fiexed的表格区域样式的高度是固定的px,这是我只需要添加一下代码即可

.el-table__fixed {
  height: 100%!important;
}

其实这里我想告诉大家,解决问题的方法不难找出,很多种方案都可实现,比如还可以使用jq、元素js等等都可以解决以上问题,当然我只是把最简单暴力的贴出来了,温馨提示下,这个样式不建议全局修改,你可以写成局部样式,部分组件生效

使用element-ui table组件 fixed 布局错位 问题原因解决

问题

使用element-ui table表格布局,头尾列fiexd时,在chrome,火狐,edg浏览器上布局正常,但是在国产浏览器,qq浏览器,UC浏览器,360浏览器上布局错乱。

原因

因为chrome正常,所以怀疑是国产浏览器的chrome内核版本问题,就查看了一下,qq浏览器是70,uc浏览器55,360是65,而edg浏览器和chrome浏览器内核版本均是92。

造成的直接原因其实已经找到了,就是国产浏览器chrome内核版本低,而element-ui在低版本chrome内核上没有做兼容。

解决

直接原因知道了,但是怎么解决?

习惯性百度了一下,果然有很多网友也遇到同样的问题,提供的方案也多种,其中说的最多的是调用element-ui table组件的doLayout方法,重新刷新布局。

然并卵,试了网友的多种方法均无效!

那只能尝试另辟蹊径。于是查看了其他页面,发现项目里面的用户列表页面同样有换行,但是没有错乱。

既然有不一致,那就对比两个页面,发现其实没多大差异,所以智能来笨办法。

将有问题的列表的el-table-column注释,看页面反应。

首先将使用了 的el-table-column注释,结果返现,当吧含有组件file-view-list (一个文件预览组件) 的el-table-column注释后,页面竟然正常了!!

那就是file-view-list组件有问题,于是找到file-view-list组件里面,注释里面的样式,后面终于找到了影响页面布局的css,竟然是一个多行省略样式,scss的混合。

//多行省略
@mixin textMultiLineEllipsis($clamp:1){
  overflow : hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: $clamp;
  -webkit-box-orient: vertical;
}

具体为何影响的深层次原因目前尚不清楚,但是后面换了种写法就好了,换成单行省略的写法

//省略号
@mixin textEllipsis ($width) {
  max-width: $width;
  overflow: hidden;
  -ms-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap;
}

不过深层次原因还没有找到。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue3中ref绑定dom或者组件失败的原因及分析

    vue3中ref绑定dom或者组件失败的原因及分析

    这篇文章主要介绍了vue3中ref绑定dom或者组件失败的原因及分析,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • 简单聊一聊Vue3组件更新过程

    简单聊一聊Vue3组件更新过程

    我们不光要学会Vue的组件化实现过程,还要懂得组件数据发生变化,更新组件的过程,这篇文章主要给大家介绍了关于Vue3组件更新过程的相关资料,需要的朋友可以参考下
    2022-04-04
  • vue3使用particles插件实现粒子背景的方法详解

    vue3使用particles插件实现粒子背景的方法详解

    这篇文章主要为大家详细介绍了vue3使用particles插件实现粒子背景的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • 用Vue.js实现监听属性的变化

    用Vue.js实现监听属性的变化

    响应系统是Vue.js的一个显著功能,修改属性,可以更新视图,这让状态管理变得非常简单且直观。这篇文章主要给大家介绍如何利用Vue.js实现观察属性的变化,有需要的朋友们可以参考借鉴,感兴趣的朋友们下面来一起看看吧。
    2016-11-11
  • vue3中实现组件通信的方法总结

    vue3中实现组件通信的方法总结

    在Vue3中,有多种方法可以实现组件之间的通信,本文就通过代码示例给大家总结一些vue3实现组件通信的常用方法,需要的朋友可以参考下
    2023-06-06
  • Vue两个同级组件传值实现

    Vue两个同级组件传值实现

    Vue组件之间是有联系的,避免不了组件之间要互相传值,那么如何实现Vue两个同级组件传值,本文就来介绍一下,感兴趣的可以了解一下
    2021-07-07
  • vue项目中form data形式传参方式

    vue项目中form data形式传参方式

    这篇文章主要介绍了vue项目中form data形式传参方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • 解决Vue使用swiper动态加载数据,动态轮播数据显示白屏的问题

    解决Vue使用swiper动态加载数据,动态轮播数据显示白屏的问题

    今天小编就为大家分享一篇解决Vue使用swiper动态加载数据,动态轮播数据显示白屏的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • Vue + Webpack + Vue-loader学习教程之相关配置篇

    Vue + Webpack + Vue-loader学习教程之相关配置篇

    这篇文章主要介绍了关于Vue + Webpack + Vue-loader的相关配置篇,文中通过示例代码介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-03-03
  • 手把手教你Vue3实现路由跳转

    手把手教你Vue3实现路由跳转

    Vue Router是Vue.js的官方路由器,它与Vue.js核心深度集成,使使用Vue.js构建单页应用程序变得轻而易举,下面这篇文章主要给大家介绍了关于Vue3实现路由跳转的相关资料,需要的朋友可以参考下
    2022-08-08

最新评论