css动态修改样式

总之,同等级别下,后来的样式会覆盖之前的样式

当只需要动态修改部分样式属性值时,没有必要重写全部样式属性值,采用覆盖的方式就好

1.计算属性:

<div class="VmImagePanel" :style="setStyle" />

computed: {
  // 当isHide=true时,left="-250px"的会覆盖left="5px"
  setStyle() {
    return {
      left: this.isHide ? '-250px' : ''
    }
  }
}

<style>
.VmImagePanel {
  position: absolute;
  left: 5px;
}
</style>

2.样式类选择:

<div class="left-btn" :class="isHide && 'left-btn-Hide'" />

<style>
.left-btn {
  &::before {
    position: absolute;
    left: -25px;
    border: 8px solid #fff;
    border-bottom-color: transparent;
    border-top-color: transparent;
    border-left-color: transparent;
  }
}
// 该样式类生效时,会覆盖left-btn里面相同的样式属性值
.left-btn-Hide {
  &::before {
    left: -15px;
    border-left-color: #fff;
    border-right-color: transparent;
  }
}
</style>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值