CSS中的scoped和module的区别

scoped

scoped的效果是对元素加上data属性,但是可能会受到全局样式的影响。

<div class="title">图书管理系统</div>

使用scope后会被加上data属性如下所示:

<div class="title" data-v-161f490f="">图书管理系统</div>

module

module经过css-loader会对类名进行编译,添加上hash值等,所以无需担心和其他页面的同样的类名冲突,也可以避免全局样式被污染。

<div class="tag">匹配结果</div>

使用module后会被对类名进行编译,效果如下所示:

.index_container_Vpwga {
    color:red;
}

如果该页面使用了动态绑定样式和module,在里面写的样式不生效,可以在动态绑定的容器里使用** :global**,将该页面需要修改的样式写在:global里,便可以生效,并且不会对此页面以外的样式产生冲突。部分展示如下:

<template>
  <div :class="styles.container">
    <span class="title">色系</span>
  </div>
</template>
<style lang="less" module>
  .container {
     padding: 12px;
     
     :global {
       .title {
        padding: 5px;
        margin: 4px;
       }
     }
  }
</style>
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值