1. 用lang=“scss” 写样式,修改element的默认样式,用 ::v-deep 样式穿透
<style lang="scss" scoped>
::v-deep .el-input-group__append {
background-color: #5094ff;
border: 1px solid #5094ff;
}
</style>
用lang=“less” 写样式,修改element的默认样式,用 /deep/ 样式穿透
2. element 分页符功能模块隐藏以及位置调换
layout布局,修改顺序可以改变功能模块的位置
3. element 表单使用fixed固定行列导致错位问题
出现的原因是 el-scrollbar__wrap::-webkit-scrollbar滚动条和表格自己的滚动条el-table__body-wrapper::-webkit-scrollbar 的宽度和高度不一致
解决:
//把两个宽高设置一样,不一定是30
.el-scrollbar__wrap::-webkit-scrollbar{
width: 30px;
height: 30px;
}
------------------------------------------
.el-table__body-wrapper::-webkit-scrollbar {
width: 30px;
height: 30px;
}
//设置表格滚动条样式
.el-table__body-wrapper::-webkit-scrollbar-thumb {
background-color: #dddee0;
border-radius: 8px;
}
资源:
可以看看这个 复现代码 只需要 把 .el-scrollbar__wrap::-webkit-scrollba 注释掉就可以 复现了。kelement-ui Table 表格自定义滚动条样式踩坑及解决方案(设置fixed时表格对不齐)–在线运行https://codepen.io/guyu521/pen/jOGwxmohttps://codepen.io/guyu521/pen/jOGwxmohttps://codepen.io/guyu521/pen/jOGwxmo
视频:https://www.douyin.com/video/7038357113130765599
4. element的table中input的blur事件冲突问题
- 问题描述
1.在table中有一列有input框,input框用的是blur事件,失去焦点,触发事件修改value;
2.图中【说明】这列,因为内容太多,使用了show-overflow-tooltip (当内容过长被隐藏时显示),就是鼠标放上去显示全部内容
问题来了:当input框内容被修改,但是没有失去焦点没有触发事件,此时将鼠标移到到【说明】这列,input框内容将被还原
造成原因:
猜测::可能!!!:table为了显示这个内容,重新获取了一次数据,刷新这列数据,相当于页面重新加载了一次数据,所以input框内容被还原了
解决办法:
如果想要坚持input使用blur事件,那就只能去掉show-overflow-tooltip属性;但是又想显示长内容,建议使用 element-ui的Tooltip 文字提示组件:常用于展示鼠标 hover 时的提示信息。
5. el-scrollbar 滚动条自定义
- 首先要修改浏览器自带滚动条样式
//设置浏览器滚动条长宽
::-webkit-scrollbar {
width: 6px;//6px刚好让浏览器默认的滚动条挤出右边,看不见(除了最大的那条滚动条)
height: 6px;
}
//设置浏览器滚动条的背景颜色
::-webkit-scrollbar-thumb {
background-color: #eee;
border-radius: 3px;
}
- 修改element修改滚动条
//高度撑满
.el-scrollbar {
height: 100%;
}
//element-ui的自定义的滚动条 把原生的滚动条挤到看不到地方
.el-scrollbar__wrap {
overflow: scroll;
这个两个添加了会让内容展示不完,实测不建议添加
//width: 110%;
//height: 120%;
}