Element-ui的table中使用fixed后出現(xiàn)行混亂情況的解決
Element-ui的table中使用fixed后出現(xiàn)行混亂
話不多說,先看看問題是什么

我們看到table左側(cè)fixed的區(qū)域并沒有延伸到表格底部,之前在用戶拖拽表格時(shí)添加了方法this.$refs.headGroupTable.doLayout()來重置表格(headGroupTable是自定義組件名稱,學(xué)過vue的都懂),但是在數(shù)據(jù)拿到后使用此方法并不能解決以上問題
解決方法
其實(shí)解決方法也很簡單,我們打開瀏覽器看到fiexed的表格區(qū)域樣式的高度是固定的px,這是我只需要添加一下代碼即可
.el-table__fixed {
height: 100%!important;
}
其實(shí)這里我想告訴大家,解決問題的方法不難找出,很多種方案都可實(shí)現(xiàn),比如還可以使用jq、元素js等等都可以解決以上問題,當(dāng)然我只是把最簡單暴力的貼出來了,溫馨提示下,這個(gè)樣式不建議全局修改,你可以寫成局部樣式,部分組件生效
使用element-ui table組件 fixed 布局錯(cuò)位 問題原因解決
問題
使用element-ui table表格布局,頭尾列fiexd時(shí),在chrome,火狐,edg瀏覽器上布局正常,但是在國產(chǎn)瀏覽器,qq瀏覽器,UC瀏覽器,360瀏覽器上布局錯(cuò)亂。

原因
因?yàn)閏hrome正常,所以懷疑是國產(chǎn)瀏覽器的chrome內(nèi)核版本問題,就查看了一下,qq瀏覽器是70,uc瀏覽器55,360是65,而edg瀏覽器和chrome瀏覽器內(nèi)核版本均是92。
造成的直接原因其實(shí)已經(jīng)找到了,就是國產(chǎn)瀏覽器chrome內(nèi)核版本低,而element-ui在低版本chrome內(nèi)核上沒有做兼容。
解決
直接原因知道了,但是怎么解決?
習(xí)慣性百度了一下,果然有很多網(wǎng)友也遇到同樣的問題,提供的方案也多種,其中說的最多的是調(diào)用element-ui table組件的doLayout方法,重新刷新布局。
然并卵,試了網(wǎng)友的多種方法均無效!
那只能嘗試另辟蹊徑。于是查看了其他頁面,發(fā)現(xiàn)項(xiàng)目里面的用戶列表頁面同樣有換行,但是沒有錯(cuò)亂。
既然有不一致,那就對比兩個(gè)頁面,發(fā)現(xiàn)其實(shí)沒多大差異,所以智能來笨辦法。
將有問題的列表的el-table-column注釋,看頁面反應(yīng)。
首先將使用了 的el-table-column注釋,結(jié)果返現(xiàn),當(dāng)吧含有組件file-view-list (一個(gè)文件預(yù)覽組件) 的el-table-column注釋后,頁面竟然正常了??!

那就是file-view-list組件有問題,于是找到file-view-list組件里面,注釋里面的樣式,后面終于找到了影響頁面布局的css,竟然是一個(gè)多行省略樣式,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;
}
不過深層次原因還沒有找到。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue實(shí)現(xiàn)Google第三方登錄的示例代碼
本文記錄作者在vue項(xiàng)目中使用到Google第三方登錄,查詢到的資料文檔也不詳細(xì),故此把自己所遇到的坑及問題詳細(xì)的記錄下來。2021-07-07
在vue+element-plus中無法同時(shí)使用v-for和v-if的問題及解決方法
由于路由中存在不需要遍歷的數(shù)據(jù)所以像用v-if來過濾,但是報(bào)錯(cuò),百度說vue不能同時(shí)使用v-if和v-for,今天小編給大家分享解決方式,感興趣的朋友跟隨小編一起看看吧2023-07-07
Vue項(xiàng)目的甘特圖組件之dhtmlx-gantt使用教程和實(shí)現(xiàn)效果展示(推薦)
文章介紹了如何使用dhtmlx-gantt組件來實(shí)現(xiàn)公司的甘特圖需求,并提供了一個(gè)簡單的Vue組件示例,文章還分享了一些配置項(xiàng),如格式化表頭日期、設(shè)置甘特圖尺寸、啟用只讀模式、設(shè)置表格列等,感興趣的朋友一起看看吧2025-02-02
vue elementUI實(shí)現(xiàn)拖拽流程圖效果
這篇文章主要為大家詳細(xì)介紹了如何通過vue elementUI實(shí)現(xiàn)拖拽流程圖效果,不引入插件,純手寫實(shí)現(xiàn),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-01-01
FastApi+Vue+LayUI實(shí)現(xiàn)前后端分離的示例代碼
本文主要介紹了FastApi+Vue+LayUI實(shí)現(xiàn)前后端分離的示例代碼,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11

