ElementUI,修改el-cascader的默认样式

Element UI 中的下拉弹窗是通过在整个body标签末尾动态添加div实现的,所以修改样式时,必须要定义全局样式才能实现样式覆盖,那怎样才能避免全局的样式污染呢?

解决办法:通过给组件添加自定义的 popper-class 属性来避免全局样式污染;

xml 复制代码
<el-cascader
    v-model="showOptions"
    style="height: 36px;width:260px"
    placeholder="显示选项"
    :options="optionsList"
    :props="props"
    collapse-tags
    clearable
    popper-class="dropDownPanel"
></el-cascader>

下拉框的样式设置:

xml 复制代码
<style>
.dropDownPanel{
    background: #123493;
    border: 1px solid rgba(57,106,254,1);
}
.dropDownPanel[x-placement^=bottom] .popper__arrow {
    display: none;
}
.dropDownPanel .el-cascader-menu {
    color: #fff;
    border-right: 1px solid rgba(57,106,254,1);
}
.dropDownPanel .el-cascader-node.in-active-path {
    color: #38B4C1;
    /* background: transparent; */
}
.dropDownPanel .el-cascader-node.is-active {
    color: #38B4C1;
}
.dropDownPanel .el-cascader-node:not(.is-disabled):focus, 
.dropDownPanel .el-cascader-node:not(.is-disabled):hover {
    background-color: #0C0F56!important;
}
</style>

样式修改

xml 复制代码
<style scoped>
/deep/ .el-tag.el-tag--info {
    background-color: #123493;
    border-color: rgba(57,106,254,1);
    color: #FFFFFF;
}
/deep/ .el-cascader__tags .el-tag:not(.is-hit) {
    border-color: rgba(57,106,254,1);
}
</style>
相关推荐
腻害兔5 小时前
【若依项目-产品经理视角】深度拆解 RuoYi-Vue-Pro 商城模块:从商品管理到交易引擎,50 张表撑起一整套电商系统
java·大数据·vue.js·产品经理·ai编程
不好听6135 小时前
从一行 JSX 到屏幕像素:前端开发者必须懂的浏览器渲染管线
前端
恒拓高科WorkPlus5 小时前
企业级内网即时通讯建设模型:BeeWorks内网IM四层架构
前端
前端小李子6 小时前
前端环境变量裸奔?我用 EnvShield 给它穿了件防弹衣
前端
youtootech6 小时前
HarmonyOS《柚兔学伴》项目实战25-我的页面、Web 嵌入与项目总结
前端·华为·harmonyos
小林ixn7 小时前
从零到一理解 React 父子组件通信:手写一个 Todo 应用带你彻底搞懂单向数据流
前端·javascript·react.js
醇氧8 小时前
CountDownLatch / CyclicBarrier / Semaphore 面试高频问答清单
前端·面试·职场和发展
qetfw9 小时前
MXU:Tauri 2 + React 的 MaaFramework 跨平台 GUI 源码
前端·python·react.js·前端框架·开源项目·效率工具
甲维斯9 小时前
我要开始吹牛逼了!Kimi K3 “宇宙无敌”!
前端·人工智能