vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > vue.js body的css不生效

vue.js body的css不生效问题及解决

作者:甜心小宇yu丶

这篇文章主要介绍了vue.js body的css不生效问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

vue.js body的css不生效

因为style上有scoped标签,去掉即可。

<style> /* 此处如果有scoped 则body的css内容不生效*/
  body{
    margin:0px;
    padding:0px;
    font-family: "微软雅黑";
    font-size: 16px;
  }
</style>

vue中的scoped属性

在vue组件中,在style标签上添加scoped属性,以表示它的样式作用于当下的组件,使得该css样式不影响到其他组件或本组件的子组件,也保护的本组件的样式不受其他组件影响。

通过Vue-CLI添加Vuetifyjs CSS不生效

通过vue-cli创建的vue项目,yarn build后,用yarn serve运行没有问题,但是用nginx提供服务,vuetify的css死活无法加载!

Nginx配置

worker_processes 1;
events {
    worker_connections 10240;
}
http {
    include /usr/local/etc/nginx/mime.types;
    default_type application/octet-stream;
    server {
        listen 80;
        server_name localhost;
        location / {
            alias ~/Workspace/peds/portal/dist/;
            index index.html;
        }
        location /api {
            rewrite ^/api/(.*)$ /$1 break;
            proxy_pass http://localhost:3000;
        }
    }
}

直接修改public目录下index.html,以CDN模式引入虽然可以工作,但是找不到根本原因实在是睡不着觉。

读了一百遍vue-cli和vuetifyjs的官方文档,逐行比较代码,总算是找到症结所在。原来通过vue-cli的vue add vuetify添加的/src/plugins/vuetify.js有问题!

fix方案如下:

修改src/plugins/目录vuetify.js如下:

import Vue from 'vue';
import 'vuetify/dist/vuetify.min.css';
import Vuetify from 'vuetify/lib';
Vue.use(Vuetify);
const opts = {};
export default new Vuetify(opts);

注意:

修改src目录main.js如下

// src/main.js
import Vue from 'vue'
import vuetify from './plugins/vuetify' // path to vuetify export
new Vue({
  vuetify,
}).$mount('#app')

参考https://vuetifyjs.com/en/getting-started/installation/#webpack-install的vuetify-loader方案修改。

重新yarn build,然后nginx -s reload,打开浏览器测试,OK。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文