vue element ui el-popover 样式修改不生效解决方法

当在Element UI的el-popover组件中尝试添加样式时,发现即使使用了 scoped、::v-deep、>>>、/deep/或者行内样式,样式都无法生效。原因是el-popover生成的div不在当前组件内,而是与App.vue平级。为了解决这个问题,可以在全局样式中添加样式,同时给popover添加一个唯一的类名。例如,添加类名'message-popover',然后在全局样式中定义.popper-class .message-popover的样式来覆盖默认样式。这种方法可以避免样式污染,确保样式正确应用。

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

在使用element 的el-popover 组件时,会发现自己对el-popover 写的样式不起作用,甚至连使用

::v-deep

‘>>>’

/deep/

行内Style

这四种样式穿透都不起作用, 这是因为 el-popover生成的div不在当前组件之内,甚至不在App.vue组件的div内,他和App.vue组件的div平级。所以需要全局设置style

首先给它添加一个特定的类名 , 千万别重复 , 语义命名以免样式污染

在当前文件样式中 不加scoped写一份 

<el-popover
  placement="bottom"
  width="320"
  trigger="hover"
  popper-class="message-popover"
>
</el-popover>

<style lang="scss">
.el-popper[x-placement^=bottom]{
  margin-top: 0 !important;
}
.message-popover{
  padding: 0 !important;
}
</style>

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值