vue中修改element-ui样式

介绍了Vue组件样式修改的两种方法。一是给组件添加id或class,添加无scoped的style直接修改;二是利用深度选择器::v-deep在scoped作用域的style里修改,还给出修改table表格背景的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.给组件加上id或者class,然后添加一个style,不要加scoped(vue可以有多个style),在组件里直接修改
2.利用深度::v-deep深度修改组建的样式,可以直接写在到scoped作用域的style里面

例:修改table表格背景等

<!-- 在element组件外加一层div,使其只在这个div内生效,防止改变全局 -->
<!-- 表头部分的样式需要利用组件提供的属性配合事件修改 -->
<div class="table-wrapper">
	<el-table id="out-table" v-loading="loading"
                 :cell-style="getRowClass"
                 :header-cell-style="getRowClass" :data="tableData" style="width: 100%;">
 </el-table>
</div>


methods:{

	// 修改element样式
            getRowClass({ row, column, rowIndex, columnIndex }) {
                return "background:transparent; border:none";
            }
}

//有scoped时,使用/deep/改变element样式
<style lang="less" scoped>
  //找到组件对应的类名利用deep修改样式
    .table-wrapper /deep/  .el-table, .el-table__expanded-cell {
        background-color: transparent;
    }

    .table-wrapper /deep/ .el-table tr {
        background-color: transparent!important;
    }
    .table-wrapper /deep/  .el-table--enable-row-transition .el-table__body td, .el-table .cell{
        background-color: transparent;
    }
    .table-wrapper /deep/  .el-table::before {
        height: 0;
    }
    .pager-box /deep/  .el-input__inner {
        background-color: transparent;
        color: #fff;
    }
</style>

//没有加spoced时,直接利用父级+所使用的组件类名修改即可
<style>
	.table-wrapper .el-table::before {
        height: 0;
    }
    .pager-box  .el-input__inner {
        background-color: transparent;
        color: #fff;
    }
</style>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值