[英]Why is bulma overriding my vue3 component css?
我正在將 bulma 與 vue cli 3 項目一起使用,並且我在index.js
下包含了 bulma 導入,如下所示
import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
require('@/assets/main.scss');<< This contains a single line @import '~bulma';
然后我在各個組件的style
標簽中指定了 css。 加載頁面時,可以看到bulma的css是style
標簽列表的最后一個,如下
<style type="text/css">
.componentSpecificClass{
color:white;
}
</style>
<style type="text/css">/*! bulma.io v0.9.2 | MIT License | github.com/jgthms/bulma */
/* Bulma Utilities */
.button, .input, .textarea, .select select, .file-cta,
...
</style>
這意味着我所有的 css 都可以被 bulma 覆蓋,如果它們的類更具體的話。 理想情況下,我希望我的組件的 css 優先,我通常會通過在style
標簽列表中將 bulma 的 css 放在更高的位置來做到這一點。
由於style
標簽是由 webpack 的構建過程注入的,我不知道如何影響這一點。
這是默認行為嗎?如果是這樣,我怎樣才能覆蓋bulma的css而不使我的規則更具體(例如使用id)或不必用Z1F8DC276F8040001419C64E9顯式覆蓋bulma css。
我能夠通過將main.js
import 移動到 main.js 的頂部並將其從require
更改為import
來解決這個問題,如下所示
前
import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
require('@/assets/main.scss');<< This contains a single line @import '~bulma';
現在
import '@/assets/main.scss';
import '@fortawesome/fontawesome-free/css/all.css'
import '@fortawesome/fontawesome-free/js/all.js'
import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.