vue项目,如何修改Element-Plus等UI组件库的样式,三种方式搞定!!!

前言

我们在学习和使用组件库构建页面的时候,时常会遇到这样的问题。
即,尽管组件库已经提供了较多的功能,来帮助我们构建自定义的效果,但有时仍不能使我们满意。
这个时候我们就不得不修改UI库的样式,来达到想要的状态。
以Element-Plus为例,在Vue3中,主要有三种方式可以实现自定义第三方组件库的样式。

项目背景

例如,我希望调节Element-Plus中的Autocomplete(自动补全输入框) 组件的输入框宽度,但是查看文档,却发现官方并没有提供这样的接口。
这个时候,我就不得不手动的查看组件的HTML实现,并且对样式进行调整。
首先F12来查看其HTML源码,如下所示。
源码
这时候我们可以快速发现需要调整样式的div层,然后在Vue项目中通过三种方式进行调整。

实现方式

全局样式

默认的<style>标签中的样式就是全局样式,这意味着,其中的任何样式都会对整个项目生效,因此需要谨慎使用。

<style>
.el-input__wrapper {
    width: 600px
}
</style>

全局选择器:global()

全局选择器的效果和全局样式基本一致,但是它可以被用在<style scoped>中,这样你的组件中既能够定义非全局的样式,又能定义全局样式。

<style scoped>
:global(.el-input__wrapper) {
    width: 600px
}
</style>

深度选择器(推荐)

深度选择器可以用于定义子组件的专属样式,不易发生冲突。因而相对于前两种定义全局样式的方式更加合适。

<style scoped>
:deep(.el-input__wrapper) {
    width: 600px
}
</style>
  • 8
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值