Vue中对比scoped css和css module的区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue中对比scoped css和css module的区别相关的知识,希望对你有一定的参考价值。
参考技术A 为所有类名重新生成类名,有效避开了css权重和类名重复的问题。css module直接替换了类名,排除了用户设置类名影响组件样式的可能性。为类名添加一个hash标识属性。无法完全避开css权重和类名重复的问题。
将 Bootstrap/Bootstrap-Vue 导入 Scoped CSS
【中文标题】将 Bootstrap/Bootstrap-Vue 导入 Scoped CSS【英文标题】:Importing Bootstrap/Bootstrap-Vue into Scoped CSS 【发布时间】:2019-10-10 11:38:09 【问题描述】:我正在开发一个 chrome 扩展,并在我的 Vue 文件上使用 Bootstrap-Vue。目前,我将 bootstrap/bootstrap-vue 导入到我的 js 文件中,但这会导致样式在全局级别上进行。理想情况下,我希望引导程序仅适用于我插入的文件。 Vue文件的部分有没有办法做到这一点?
//在.js文件中
import VModal from 'vue-js-modal'
import BootstrapVue from 'bootstrap-vue';
//我在vue文件里试过了,没有效果
<style scoped src="bootstrap/dist/css/bootstrap.css"></style>
<style scoped src="bootstrap-vue/dist/bootstrap-vue.css"></style>
【问题讨论】:
【参考方案1】:要仅在组件中导入样式,请在 <style>
标签内使用它
@import 'bootstrap/dist/css/bootstrap.css';
@import 'bootstrap-vue/dist/bootstrap-vue.css';
【讨论】:
如果你这样做,样式会在组件外泄漏。【参考方案2】:何塞的回答几乎是正确的:
<style scoped>
@import 'bootstrap/dist/css/bootstrap.css';
@import 'bootstrap-vue/dist/bootstrap-vue.css';
</style>
【讨论】:
以上是关于Vue中对比scoped css和css module的区别的主要内容,如果未能解决你的问题,请参考以下文章
vue3单页面引入公共的css,加了scoped但无法加deep,导致样式无法穿透,如何解决?