一开始引入element-plus之后正常,引入button等组件也没问题,但到后面就突然发现button的样式消失了,其他的组件却都是正常的,并且有时候重启样式还能恢复,但第二天重新启动程序,却又发现样式消失。
一开始以为是样式丢失了,在网上各种查找,有的说是因为<style scoped>中加入了scoped的导致,scoped表示当前内容的样式只在当前页面生效,所以不是。
还有说是要用将公用样式引入app.vue中
<style>
@import "./views/xxx.css";
<style>
还有说是Vue3 ,安装ant-design-vue官网文档配置,用全局部分注册+babel样式引入,发现样式不生效,按钮是灰色的。
最后发现是没安装@vue/cli-plugin-babel,这个导致。
执行npm install @vue/cli-plugin-babel
安装后解决,应该是创建项目的时候,没选择这个东西。
各种各样的说法都没有,后来我把自己的程序一个个删除,最终找到了原因。
是因为tailwind和element的css发生了冲突,将element的css覆盖掉了。
解决办法
1,将tailwind的引入放在element-plus/dist/index.css前面。我的tailwind是在App.vue里引入的,所以把import App from './App.vue'放在了import 'elemnt-plus/dist.index.css'前面。看个人的文件位置调整引入顺序就好。
2.然后找到一个叫tailwind.config.js的文件。找到里面的plugins:[]
改成:
plugins:[
funcion({addBase}){
addBase({
".el-button":{
"background-color":"var(--el-button-bg-color,val(--el-color-white))"
}
})
},
];
然后就发现button的样式恢复了,这个坑爬了三四天,希望以后的遇到这个坑的兄弟能够顺利解决。