Vue 中的 CSS

2018-09-03  本文已影响0人  苦瓜_6

有作用域的 CSS

当 <style> 标签有 scoped 属性时,它的 CSS 只作用于当前组件中的元素。

<style>
/* 全局样式 */
</style>

<style scoped>
/* 本地样式 */
</style>

关于有作用域的CSS 官方文档在 这里


在 vue 项目里使用scss

安装node-sass 和 sass-loader :

export SASS_BINARY_SITE="https://npm.taobao.org/mirrors/node-sass"
npm install --save  sass-loader node-sass
<style lang="scss" scoped></style>

在Vue中使用 SCSS 变量

npm install sass-resources-loader --save-dev
return {
    css: generateLoaders(),
    postcss: generateLoaders(),
    less: generateLoaders('less'),
    sass: generateLoaders('sass', { indentedSyntax: true }),
    scss: generateLoaders('sass'),
    stylus: generateLoaders('stylus'),
    styl: generateLoaders('stylus')
  }

把上面这句scss: generateLoaders('sass'),改成如下:

scss: generateLoaders('sass').concat(
      {
        loader: 'sass-resources-loader',
        options: {
          resources: path.resolve(__dirname, '../src/assets/css/variables.scss')//这里按照你的文件路径填写
        }
      }
    )

引入CSS文件

1. 引入第三方 CSS

以引入 normalize.css 为例

首先安装 normalize.css:

npm install  --save normalize.css

然后可以看到package.json里多了这个:


image.png

引用:


image.png

还是在控制台看:


image.png

normalize.css 和 reset.css的区别:


2. 引入自己写的CSS

在Vue 项目 中引入自己写的 reset.scss

然后就可以在控制台看到我们的css已经成功引入了:


image.png

参考:

上一篇 下一篇

猜你喜欢

热点阅读