ElementUI组件样式修改--表格背景透明,去除下横线(附:组件决定性class名(待整理验证,不完全正确))

本文主要是介绍ElementUI组件样式修改--表格背景透明,去除下横线(附:组件决定性class名(待整理验证,不完全正确)),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 一.方法:
      • 方法1:使用/deep/(推荐)
      • 方法二:使用table属性(无法设置表格透明)
    • 二.举一反三:修改elementUi(甚至其他ui组件库)的组件样式也可以用相同的方法:
    • 三.可能出现的问题:
    • 四.拓展:
    • 五.组件决定性class名(待整理验证,不完全正确)
    • 六.对于一些浮层组件,生成的div不在当前组件之内,甚至不在App.vue组件的div内,和App.vue组件的div平级,设置单页面样式,不污染全局的方法
      • 关键点
      • 1. popover弹出框
      • 2.Cascader层级选择器(下拉选择框部分,选择输入框可用div包裹,故在此不讨论)
      • 3.select选择器(这里的子元素不需要深度选择器就可以自己设置样式,不是很懂)
      • 4.DatePicker日期选择器(年份,其他选择器需要修改一些类名)

一.方法:

方法1:使用/deep/(推荐)

1)div包裹el-table标签(不设置div也可以,但是为了不污染全局,设置div起到一个类似作用域的作用)

<div class="table-wrapper"><el-table></el-table>
</div>

2)设置css(关键词:/deep/)

/**表格背景透明 */
//透明化整体
.table-wrapper /deep/  .el-table,
.el-table__expanded-cell {background-color: transparent !important;
}
//透明化行、单元格,删除表头下横线
.table-wrapper /deep/ tr, .table-wrapper /deep/ th, .table-wrapper /deep/ td {background: #1439391c !important;color:#fff;border-bottom: 0px; //删除表头下横线
}
//hover时样式
.table-wrapper /deep/  .el-table tbody tr:hover>td {background-color: #367f7f78 !important
}
// 表格内容(有用)
.table-wrapper /deep/ .el-table__row {background: #1439391c !important;color: #46d4ff;
}
/**表格背景透明end */

方法二:使用table属性(无法设置表格透明)

1)关键点:
a. 此方法只能设置行和单元格的样式,无法设置表格整体透明,所以表格透明需求无法完成,表格其他方面的样式可以完成;
b. 设置自定义样式时,不能写在scoped中;
c. 设置样式时需要!important

background: #1439391c !important;

2)设置

<el-table header-row-class-name="toumingClass"header-cell-class-name="toumingClass"row-class-name="toumingClass"cell-class-name="toumingClass">
<style>
.toumingClass {background: #1439391c !important;color: #fff !important;border-bottom: 0px !important;
}
</style>

二.举一反三:修改elementUi(甚至其他ui组件库)的组件样式也可以用相同的方法:

1.设置div包裹组件标签(不设置div也可以,但是为了不污染全局,设置div起到一个类似作用域的作用)
2.找到要修改的标签对应的class

三.可能出现的问题:

1.当你所有可见字符都没有问题,但是设置依然没生效的时候,你可以看看是不是空格的问题。下图中两个圆圈所圈中的空格就不一样,以致于一个生效,一个没生效(我也不知道为什么我可能打出一个使不能生效的空格,删除问题空格,重新打出一个空格就生效了,神奇)
在这里插入图片描述

四.拓展:

1./deep/–穿透scoped:
Scoped CSS:Web组件产生不污染其他组件,也不被其他组件污染的CSS规范
vue引用了第三方组件,需要在组件中局部修改第三方组件的样式,而又不想去除scoped属性造成组件之间的样式污染。此时只能通过>>>(/deep),穿透scoped。

有些Sass 之类的预处理器无法正确解析 >>>。所以推荐使用 /deep/ 操作符( >>> 的别名)

<style scoped>外层 >>> 第三方组件 {样式}外层 /deep/ 第三方组件 {样式(外层包裹的第三方组件)}/deep/  第三方组件 {样式(当前页面的所有第三方组件)}
</style>

五.组件决定性class名(待整理验证,不完全正确)

  1. Cascader 级联选择器–下拉框(感觉会全局复制,详见六)
	.el-cascader__dropdown {color: #fff;border: 1px solid #157cce;}

src\view\dataCenter\map.vue
参考

六.对于一些浮层组件,生成的div不在当前组件之内,甚至不在App.vue组件的div内,和App.vue组件的div平级,设置单页面样式,不污染全局的方法

关键点

1)添加popper-class属性,将组件内div包裹起来
2)需要sass<style lang="scss">
3)找出组件生成html后的相关类名,对其重新设置
4)重新设置的样式最好都带上!important,避免项目打包之后,因级别不够失效
3)不知道为什么,深度选择器>>>,/deep/,::v-deep都没用
待研究,官方文档:范围css

1. popover弹出框

1)html

<el-popover  popper-class="map-popover">...</el-popover>

2)相关类名

.map-popover{background-color: #0838aa !important;border-color: #157cce !important;.popper__arrow {border-top-color: #157cce !important;border-bottom-color: #157cce !important;}.popper__arrow::after {border-top-color: #157cce !important;border-bottom-color: #157cce !important;}
}

在这里插入图片描述
3)效果
在这里插入图片描述

2.Cascader层级选择器(下拉选择框部分,选择输入框可用div包裹,故在此不讨论)

1)html

<el-cascader  popper-class="map-cascader"  ></el-cascader>

2)相关类名

.map-cascader{color: #fff;border: 1px solid #157cce !important;.el-cascader-panel {color: #fff !important;.el-cascader-menu {width: 100% !important;color: #fff !important;background-color: #0648bb !important;.el-cascader-menu__wrap {.el-cascader-menu__list {.el-cascader-node:not(.is-disabled):focus, .el-cascader-node:not(.is-disabled):hover{background: #006dc3 !important;}}}}}.popper__arrow {border-top-color: #157cce !important;border-bottom-color: #157cce !important;}.popper__arrow::after {border-top-color: #157cce !important;border-bottom-color: #157cce !important;}
}

在这里插入图片描述
在这里插入图片描述

3)效果
在这里插入图片描述

3.select选择器(这里的子元素不需要深度选择器就可以自己设置样式,不是很懂)

1)html

<el-select popper-class="selectOption"></el-select>

2)相关类名

<style lang="scss" >
.selectOption{background-color: #0838aa !important;border-color: #157cce !important;.el-select-dropdown__item{color:#fff !important;}.el-select-dropdown__item.selected{background-color:#1345b1 !important;}.el-select-dropdown__item.hover,.el-select-dropdown__item:hover{background-color:#1345b1 !important;}.popper__arrow {border-top-color: #157cce !important;border-bottom-color: #157cce !important;}.popper__arrow::after {border-top-color: #0838aa !important;border-bottom-color: #0838aa !important;}
}
</style>

在这里插入图片描述
3)效果
在这里插入图片描述

4.DatePicker日期选择器(年份,其他选择器需要修改一些类名)

1)html

<el-date-picker popper-class="issue-date-box"></el-date-picker>

2)相关类名

<style lang="scss">.issue-date-box{background-color:#0834a4 !important;border: 1px solid #157cce !important ;color: #fff !important;.el-date-picker__header--bordered {border-bottom-color: #157cce;.el-picker-panel__icon-btn, .el-date-picker__prev-btn, .el-icon-d-arrow-left {color: #fff !important;}.el-date-picker__header-label {color: #fff !important;}}.el-picker-panel__content {table{td {padding: 10px 3px !important; .cell {color: #fff !important;}} td.current {padding: 10px 3px !important; .cell {color: #0ecffd !important;}} }}.popper__arrow {border-top-color: #157cce !important;border-bottom-color: #157cce !important;}.popper__arrow::after {border-top-color: #0838aa !important;border-bottom-color: #0838aa !important;}}
</style>

在这里插入图片描述
3)效果
在这里插入图片描述

附:css画出三角形

随手记,未整理
.el-loading-mask:遮罩层

这篇关于ElementUI组件样式修改--表格背景透明,去除下横线(附:组件决定性class名(待整理验证,不完全正确))的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/198866

相关文章

Vue3视频播放组件 vue3-video-play使用方式

《Vue3视频播放组件vue3-video-play使用方式》vue3-video-play是Vue3的视频播放组件,基于原生video标签开发,支持MP4和HLS流,提供全局/局部引入方式,可监听... 目录一、安装二、全局引入三、局部引入四、基本使用五、事件监听六、播放 HLS 流七、更多功能总结在 v

Java JDK Validation 注解解析与使用方法验证

《JavaJDKValidation注解解析与使用方法验证》JakartaValidation提供了一种声明式、标准化的方式来验证Java对象,与框架无关,可以方便地集成到各种Java应用中,... 目录核心概念1. 主要注解基本约束注解其他常用注解2. 核心接口使用方法1. 基本使用添加依赖 (Maven

Java抽象类Abstract Class示例代码详解

《Java抽象类AbstractClass示例代码详解》Java中的抽象类(AbstractClass)是面向对象编程中的重要概念,它通过abstract关键字声明,用于定义一组相关类的公共行为和属... 目录一、抽象类的定义1. 语法格式2. 核心特征二、抽象类的核心用途1. 定义公共接口2. 提供默认实

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl

Python函数的基本用法、返回值特性、全局变量修改及异常处理技巧

《Python函数的基本用法、返回值特性、全局变量修改及异常处理技巧》本文将通过实际代码示例,深入讲解Python函数的基本用法、返回值特性、全局变量修改以及异常处理技巧,感兴趣的朋友跟随小编一起看看... 目录一、python函数定义与调用1.1 基本函数定义1.2 函数调用二、函数返回值详解2.1 有返

Java利用Spire.XLS for Java设置Excel表格边框

《Java利用Spire.XLSforJava设置Excel表格边框》在日常的业务报表和数据处理中,Excel表格的美观性和可读性至关重要,本文将深入探讨如何利用Spire.XLSforJava库... 目录Spire.XLS for Java 简介与安装Maven 依赖配置手动安装 JAR 包核心API介

Nginx屏蔽服务器名称与版本信息方式(源码级修改)

《Nginx屏蔽服务器名称与版本信息方式(源码级修改)》本文详解如何通过源码修改Nginx1.25.4,移除Server响应头中的服务类型和版本信息,以增强安全性,需重新配置、编译、安装,升级时需重复... 目录一、背景与目的二、适用版本三、操作步骤修改源码文件四、后续操作提示五、注意事项六、总结一、背景与

Python实现Excel批量样式修改器(附完整代码)

《Python实现Excel批量样式修改器(附完整代码)》这篇文章主要为大家详细介绍了如何使用Python实现一个Excel批量样式修改器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录前言功能特性核心功能界面特性系统要求安装说明使用指南基本操作流程高级功能技术实现核心技术栈关键函

Vue和React受控组件的区别小结

《Vue和React受控组件的区别小结》本文主要介绍了Vue和React受控组件的区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录背景React 的实现vue3 的实现写法一:直接修改事件参数写法二:通过ref引用 DOMVu

C#使用Spire.XLS快速生成多表格Excel文件

《C#使用Spire.XLS快速生成多表格Excel文件》在日常开发中,我们经常需要将业务数据导出为结构清晰的Excel文件,本文将手把手教你使用Spire.XLS这个强大的.NET组件,只需几行C#... 目录一、Spire.XLS核心优势清单1.1 性能碾压:从3秒到0.5秒的质变1.2 批量操作的优雅