被困扰的elementplus样式修改问题:select选择器修改和el-input修改

一、Select选择器的原生样式的本来面貌

这是原生的没有经过任何加工的面貌:

这是没有经过任何加工的选中时出现下拉框的面貌:

这是没有经过加工的悬浮下拉菜单的面貌:

这是没有经过加工的选中时的面貌:

二、如何修改Select选择器,将她的样子变得好看或者如你所愿

这是原生的copy的代码:

<template><el-select v-model="value" class="m-2" placeholder="请选择" size="large"><el-optionv-for="item in options":key="item.value":label="item.label":value="item.value"/></el-select><el-select v-model="value" class="m-2" placeholder="请选择"><el-optionv-for="item in options":key="item.value":label="item.label":value="item.value"/></el-select><el-select v-model="value" class="m-2" placeholder="请选择" size="small"><el-optionv-for="item in options":key="item.value":label="item.label":value="item.value"/></el-select>
</template>

 想要修改她,就必须了解她都有哪一层的“衣服(类名)”,我又该如何给她修改是符合她“身材”(类名)的衣服尺寸大小呢?

三、如何修改?修改的方法是什么?

1、找到下拉框的类名,使用元素检查器查看,并写一个全局的样式

2、通过样式穿透来修改样式

3、通过官方给定的修改方式进行添加类名自定义修改

看着有三种方式,实则这三种方式都不太好找,有时候即使你全部用一遍,发现一个方法生效作用到网页上的样式都没有。此时你是如此的目瞪口呆和哑口无言,就想说一句:Why?我明明...

四、挨个解决

先不管你是不是有这个scoped进行作用域隔离,有没有都无所谓。

有的话无非就是作用到你当前页面,而不会影响到其他页面,即使类名相同。

然后就是核心问题:我该修改哪些类名呢?

我直接告诉你:

修改点击之后的边框和阴影,就修改这个类名:

<style lang="scss" scoped>.el-select__wrapper.is-focused{border-color: var( --focus-border-color) !important;}
</style>

修改下拉框的文字和背景颜色就修改这个类名:

<style lang="scss" scoped>.el-select-dropdown__item {color: var( --text-green-color) !important;}
</style>

修改下拉框的鼠标悬浮的字体颜色和背景颜色就修改这个类名

<style lang="scss" scoped>.el-select-dropdown__item.is-hovering {background-color: var(--bg-green-color) !important;color: var(--text-white-color) !important;}
</style>

修改下拉框的鼠标选中的字体颜色和背景颜色就修改这个类名

<style lang="scss" scoped>.el-select__wrapper.is-focused{border-color: var( --focus-border-color) !important;}
</style>

修改下拉框的原始的就是不点击呈现出来的样式就修改这个类名


<style lang="scss" scoped>.el-select__wrapper {border: 1px solid var(--border-color);box-shadow: none !important;}
</style>

以上就是一些常用的类名,但是这种修改属于全局修改,也就是说如果你不在scoped中写的话,如果你其他地方也用了这个组件,那么也会遵循这个样式,因为这个样式是全局的。

还有一个官方给的:就是给定一个自定义的类名。这里我给的是select_box

<template><div class="lang-switcher"><el-select v-model="selectedLocale" placeholder="选择语言"style="min-width: 100px;width:5vw;":popper-append-to-body="false"class="select_box"><el-option v-for="item in locales" :key="item.code" :label="item.name" :value="item.code"/></el-select></div>
</template>

 下面是样式:

<style lag="scss" scoped>
.select_box{// 默认placeholder:deep .el-input__inner::placeholder {font-size: 14px;font-weight: 500;color: #3E534F;}// 默认框状态样式更改:deep .el-input__wrapper {height: 42px;background-color: rgba(0,0,0,0)!important;box-shadow: 0 0 0 1px #204C42 inset!important;--el-select-focus-border-color:#5AC087!important;--el-select-hover-border-color: #5AC087!important;}// 修改下拉框样式-点击框focus:deep .is-focus .el-input__wrapper {box-shadow: 0 0 0 1px #5AC087 inset!important;--el-select-focus-border-color:#5AC087!important;--el-select-hover-border-color: #5AC087!important;}:deep .el-select__caret {color:#5AC087!important;  // 清除按钮}:deep .el-input__inner {color: #5AC087!important; // 选中字体色}
}// 下拉框-展开样式
.el-select-dropdown__item.selected {// background-color: #83e818!important; // 选中
}
.el-select-dropdown__item.hover {background-color: #498f6c!important; // hover
}
:deep .el-dropdown-menu__item:not(.is-disabled) {// color: #182F23!important; // disabled
}
.el-select-dropdown__item {color: #4FC78A !important; // 下拉项颜色
}
:deep .el-popper{background-color: #121f1b!important; // 展开下拉背景border: 1px solid #498f6c!important; // 展开下拉边框
}
:deep .el-popper .el-popper__arrow::before{border-top: 1px solid #498f6c!important; // 箭头按钮边框background-color: #121f1b!important; // 箭头按钮背景色
}
</style>

补充:

在写自定义类名的时候,最好也加上这段代码=》:popper-append-to-bofy="false"加上这个的意思是将这个选项的容器挂载到你的最外层盒子上div#app,如果你不加上这个,那么这个选项的容器就会是最外层盒子的兄弟元素,因为你不是为了避免作用到全局而加上了scoped吗,这个scoped就是将你的样式局限到当前最外层盒子上,如果你即不想影响到全局,又想作用到当前盒子,那么就必须加上这个属性,否则无法具有样式的穿透效果。

加上的话这个容器的盒子是在这个里面的,就变成父子节点,而不是兄弟节点了。

到此这个常用到的就结束了,如果你还有其他的需要用到的,可以在评论中留言,我们一起学习交流。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/916791.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/916791.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GO 从入门到精通2

Go语言的反射&#xff08;Reflection&#xff09;机制通过 reflect 包实现&#xff0c;允许程序在运行时动态检查、修改和操作变量的类型信息和值。以下是反射的核心概念、用法及注意事项的详细解析&#xff1a;一、反射的基本概念reflect.Type 表示变量的类型信息&#xff0c;…

常用设计模式系列(十二)—享元模式

常用设计模式系列&#xff08;十二&#xff09;—享元模式 第一节 前言 昏昏沉沉的两天过去了&#xff0c;也不知道为什么&#xff0c;突然总觉得很困&#xff0c;可能之前熬夜熬的多了&#xff0c;所以现在可能年纪大了&#xff0c;需要蹦一蹦才能把自己从颓废的边缘拉扯回来&…

基于spring boot的医院挂号就诊系统(源码+论文)

一、开发环境 技术/工具描述MYSQL数据库1. 体积小&#xff0c;安装便捷&#xff1a;MySQL数据库体积小&#xff0c;占用内存小&#xff0c;不影响电脑上其他软件的运行&#xff0c;并且不需要因为安装维护MySQL数据库而重装系统。2. 适合老旧电脑&#xff1a;作为学习开发的电…

spring-security

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId> </dependency>spring: security: user: name: root password: 123456 这个配置在访问接口时候根据您提供的Spring Secur…

搭建一个自定义的 React 图标库

搭建一个自定义的 React 图标库可以让你在多个项目中复用统一的图标资源&#xff0c;同时支持按需加载、主题化和灵活的配置。以下是详细的步骤指南&#xff1a; 1. 设计图标库结构 首先规划图标库的目录结构和功能&#xff1a; my-react-icons/ ├── src/ │ ├── ico…

宝塔面板如何升级OpenSSL

宝塔面板如何升级OpenSSL&#xff08;亲测可用&#xff09;目前一些服务器的OpenSSL还是1.0.1e版本&#xff0c;今天进行服务器漏洞检测出现OpenSSL存在漏洞&#xff0c;那只能升级OpenSSL了。1、登录SSH&#xff0c;查看OpenSSL版本openssl version2、下载源代码wget https://…

深入理解 C++ 红黑树:从理论到实践

引言 在计算机科学领域&#xff0c;数据结构是构建高效算法的基石。而在众多的数据结构中&#xff0c;平衡二叉搜索树因其优秀的查找、插入和删除性能而备受关注。红黑树&#xff08;Red-Black Tree&#xff09;作为一种自平衡的二叉搜索树&#xff0c;更是在 C 标准库&#x…

外星人笔记本装win11哪个版本好_外星人笔记本装win11专业版教程

外星人笔记本安装win11哪个版本好&#xff1f;答&#xff1a;外星人笔记本还是建议安装win11专业版。Win分为多个版本&#xff0c;其中家庭版&#xff08;Home&#xff09;和专业版&#xff08;Pro&#xff09;是用户选择最多的两个版本。win11专业版在功能以及安全性方面有着明…

自学嵌入式 day37 HTML

HTML:超文本标记语言HyperText Markup Language一种用于创建网页的标准标记语言HTML 运行在浏览器上&#xff0c;由浏览器来解析。https://www.runoob.com/html/html-tutorial.html1.格式 <!DOCTYPE html> <html><head><meta charset"utf-8"&g…

【车联网kafka】Kafka核心架构与实战经验(第一篇)

目录 一、我与kafka的缘分-初识Kafka 二、Kafka深入探讨-了解kafka ​编辑2.1 kafka 生产者框架 2.1.1 生产者在生活中的实例 2.1.2 kafka生产者流程及框架 1. 主线程处理阶段 2. Sender线程处理阶段 设计优势总结 2.2 kafka 生产者框架中的一些关键参数 2.3 kafka 生…

Go 语言变量作用域

Go 语言变量作用域 引言 在编程语言中&#xff0c;变量作用域是定义变量可以使用和不可使用的区域。在Go语言中&#xff0c;理解变量的作用域对于编写高效且易于维护的代码至关重要。本文将详细介绍Go语言中的变量作用域&#xff0c;包括其规则、类型以及实际应用。 一、变量作…

单卡10分钟部署MiniCPM4-0.5B:轻量级大模型本地运行指南

一、介绍 MiniCPM 4 是一个极其高效的边缘侧大型模型&#xff0c;经过了模型架构、学习算法、训练数据和推理系统四个维度的高效优化&#xff0c;实现了极致的效率提升。 &#x1f3d7;️ 高效的模型架构&#xff1a; InfLLM v2 – 可训练的稀疏注意力机制&#xff1a;采用可…

CSS变量与Houdini自定义属性:解锁样式编程新维度

在前端开发中&#xff0c;CSS变量和Houdini自定义属性正在彻底改变我们编写和管理样式的方式。这些技术不仅提高了样式代码的可维护性&#xff0c;更为CSS带来了编程语言的强大能力。一、CSS变量&#xff1a;原生样式的革命 CSS变量&#xff08;CSS Custom Properties&#xff…

Android中PID与UID的区别和联系(2)

一、核心概念对比特性PID (Process ID)UID (User ID)本质进程唯一标识符应用身份标识符分配时机进程启动时动态分配应用安装时静态分配生命周期进程结束时回收应用卸载时才回收变化性每次启动都可能不同长期保持不变作用范围单进程内唯一全设备范围唯一核心作用系统资源管理&am…

TCPDump实战手册:协议/端口/IP过滤与组合分析指南

目录 一、基础过滤速查表 1. 协议过滤&#xff08;单协议&#xff09; 2. 端口过滤 3. IP地址过滤 二、组合过滤实战示例 1. 协议端口组合 2. IP端口组合 3. 复杂逻辑组合 三、高级协议分析示例 1. HTTP请求分析 2. DNS问题排查 3. TCP连接问题分析 四、组合过滤场…

【智能协同云图库】智能协同云图库第八弹:基于阿里云百炼大模型—实现 AI 扩图功能

AI 扩图功能 需求分析 随着 AI 的高速发展&#xff0c;AI 几乎可以应用到任何传统业务中&#xff0c;增强应用的功能&#xff0c;带给用户更好的体验。 对于图库网站来说&#xff0c;AI 也有非常多的应用空间&#xff0c;比如可以利用 AI 绘图大模型来编辑图片&#xff0c;实现…

2025年Solar应急响应公益月赛-7月笔记ing

应急响应身为颜狗的我是真心觉得lovelymem的ui写得~~~~【任务1】应急大师题目描述&#xff1a;请提交隐藏用户的名称&#xff1f;print打印注册表&#xff0c;或者开启环境是就有【任务4】应急大师题目描述&#xff1a;请提交黑客创建隐藏用户的TargetSid&#xff08;目标账户安…

C++/CLI vs 标准 C++ vs C# 语法对照手册

&#x1f680; C/CLI vs 标准 C vs C# 语法对照手册&#x1f9e9; 核心类型系统对比 // 类型声明语法对比 标准 C C/CLI C# ─────────────────────────────────────────────────…

仓库管理系统-2-后端之基于继承基类的方式实现增删改查

文章目录 1 数据库表user 2 后端通用框架 2.1 User.java(实体类) 2.2 使用封装的方法(继承基类) 2.2.1 UserMapper.java(mapper接口) 2.2.2 UserService.java(service接口) 2.2.3 UserServiceImpl.java(service实现类) 2.2.4 UserController.java(控制器) 3 增删改查(封装的方法…

【el-table滚动事件】el-table表格滚动时,获取可视窗口内的行数据

一个简单的获取内容的办法 表格部分&#xff0c;主要是ref写一下<el-table :data"tableData" ref"tableRef"> </el-table>进入页面的时候绑定监听 mounted(){ // 绑定滚动事件this.$nextTick(() > {const table this.$refs.tableRef;const…