SCSS的引入和基本使用

一、安装依赖命令:

cnpm i node-sass@^4.14.1 --save-dev
cnpm i sass-loader@^7.3.1 --save-dev
cnpm i style-loader@^3.3.0  --save-dev

二、全局引入:创建styles/inex.scss文件,在main.js中引入:import '@/styles/index.scss'

vue.congfig.js中配置:

const loader = require("sass-loader");

module.exports = {
    devServer:{
      // 端口号
      port:8088,
      // url地址
      host:'localhost',
      // 项目启动浏览器自动打开
      open:true
    },
    css: {
      loaderOptions: {
        sass: {
          data: `@import "@/styles/index.scss";`  //公共scss文件路径
        }
      }
    }
}

这样就可以全局使用index.scss

三、基本使用:

<template>
  <div id="app">
    <div class="d">
      <p>hello world</p>
      <div class="d1">
        <p>div1</p>
        <a>a标签</a>
      </div>
      <p>测试</p>
    </div>
    <hr />
    <!-- <router-view/> -->
  </div>
</template>

<style lang="scss">
// 定义变量
$highlight-color: #F90;
$lightColor: #ffffff;
$darkColor: #000000;
$redColor : #f00;
$blue-color: blue;
$width:400px;
// 混合器:通过@mixin来使用
@mixin radius {
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

// #app div p {
//   color: $redColor;
// }

// #app div .d1 {
//   border: 1px solid $blue-color;
// }

// 嵌套书写
#app {
  .d {
    // & > p 子组合选择器,只选择.d直接后代的p标签
    & > p {
      color: $redColor;
    }
    .d1 {
      border: 1px solid $blue-color;
      // 通过变量来定义
      width: $width/2;
      // 混合器:通过@include来使用
      @include radius;
      // p {
      //   color: $orangeColor;
      // }
      // 伪类选择器
      &:hover {
        color: $greenColor;
      }
    }
  }
}

</style>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值