css /deep/、 v-deep、:deep这三个效果一样的用法

71 篇文章 0 订阅

基本意思就是,一个组件会被多个地方使用,但是有些地方可能需要的样式不太一样,比如一个地方需要红色背景,而另外一个地方可能需要蓝色背景,假设第一个地方已经是红色背景了,我想在第二个地方用时改成蓝色,这是如果直接通过全局修改样式则会影响到第一个的背景样式,但是我的本意并不是修改第一个地方的,而是只修改第二个地方的,这个时候就可以在第二个用到样式的前边添加上一个/deep/ 第一个的跟样式{} 在对象中修改颜色即可,比如

详细可参考此链接:掘金

scss 中使用方法:可以使用v-deep

 ~~~javascript

::v-deep .el-drawer__wrapper{
    top: 176px;
}

~~~

vue 中可以这样使用:

~~~html

<style lang="less" scoped>
.jjw{
  :deep .van-button--primary{
    background-color: deeppink;
  }
  /deep/ .van-button--normal{
    font-size: 24px;
  }
}
</style>

~~~

效果是一样的 

需要注意的是同一个项目不同的.vue之间(写有scoped隔离的)也是可以使用deep的

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值