修改el-select默认样式

在开发过程中,我们一般遇到特殊的UI效果图,不得不修改<el-select>默认样式了。

修改el-select框样式

html 复制代码
<template>
       <el-select
         v-model="yearValue"
         class="select_box"
         multiple
         placeholder="请选择年份支持多选"
         :teleported="false"
         >
            <el-option
              v-for="item in yearOptions"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            />
        </el-select>
</template>
css 复制代码
.select_box {
    width: 170px;

    // 默认placeholder
    :deep(.el-input__inner::placeholder) {
        color: #ccc;
    }

    // 默认框状态样式更改
    :deep(.el-input__wrapper) {
        background-color: #1d333700 !important;
        box-shadow: 0 0 0 1px #3fa6f4 inset !important;
        --el-select-focus-border-color: #3fa6f4 !important;
        --el-select-hover-border-color: #3fa6f4 !important;
    }

    // 修改下拉框样式-点击框focus
    :deep(.is-focus .el-input__wrapper) {
        box-shadow: 0 0 0 1px #3fa6f4 inset !important;
        --el-select-focus-border-color: #3fa6f4 !important;
        --el-select-hover-border-color: #3fa6f4 !important;
    }

    :deep(.el-select__caret) {
        color: #3fa6f4 !important; // 清除按钮
    }

    :deep(.el-input__inner) {
        color: #3fa6f4 !important; // 选中字体色
    }

    :deep(.el-select-dropdown__empty) {
        background-color: #072258;
        color: #ddd !important;

    }

    :deep(.el-select-dropdown__wrap) {
        color: #fff;
        background-color: #072258;
        color: #ddd !important;
    }

    :deep(.el-select-dropdown__item) {
        color: #fff !important;
    }

    :deep(.el-select-dropdown__item.hover) {
        background-color: rgb(22, 81, 244) !important;
        color: #ddd !important;
    }

    :deep(.el-select-dropdown__item.selected) {
        background-color: rgb(22, 81, 244) !important;
        color: #ddd !important;
    }

    :deep(.el-select-tags-wrapper.has-prefix>span) {
        background-color: rgb(22, 81, 244) !important;
        color: #ddd !important;
    }
}

// 下拉框-展开样式
.el-select-dropdown__item.selected {
    // background-color: #83e818!important; // 选中
}

.el-select-dropdown__item.hover {
    background-color: #121f1b !important; // hover
}

:deep .el-dropdown-menu__item:not(.is-disabled) {
    // color: #182F23!important; // disabled
}

.el-select-dropdown__item {
    color: #3fa6f4 !important; // 下拉项颜色
}

:deep .el-popper {
    background-color: #121f1b !important; // 展开下拉背景
    border: 1px solid #3fa6f4 !important; // 展开下拉边框
}

:deep .el-popper .el-popper__arrow::before {
    border-top: 1px solid #3fa6f4 !important; // 箭头按钮边框
    background-color: #121f1b !important; // 箭头按钮背景色
}

这里需要注意一点,<el-select>修改下拉框的样式需要加上**:teleported="false"**详细看element plus官网文档

相关推荐
遂心_8 小时前
JavaScript 函数参数传递机制:一道经典面试题解析
前端·javascript
Gracemark8 小时前
高德地图-地图选择经纬度问题【使用输入提示-使用Autocomplete进行联想输入】(复盘)
vue.js
遂心_8 小时前
深入理解 React Hook:useEffect 完全指南
前端·javascript·react.js
前端Hardy9 小时前
HTML&CSS: 谁懂啊!用代码 “擦去”图片雾气
前端·javascript·css
前端Hardy9 小时前
HTML&CSS:好精致的导航栏
前端·javascript·css
天下无贼9 小时前
【手写组件】 Vue3 + Uniapp 手写一个高颜值日历组件(含跨月补全+今日高亮+选中状态)
前端·vue.js
一个不爱写代码的瘦子10 小时前
迭代器和生成器
前端·javascript
洋葱头_10 小时前
vue3项目不支持低版本的android,如何做兼容
前端·vue.js
奔跑的蜗牛ing11 小时前
Vue3 + Element Plus 输入框省略号插件:零侵入式全局解决方案
vue.js·typescript·前端工程化
源猿人13 小时前
企业级文件浏览系统的Vue实现:架构设计与最佳实践
前端·javascript·数据可视化