• vue2 sass 安装及使用2


    根据上一篇 vue2 sass 安装及使用_lsswear的博客-CSDN博客,使用vue-cli 5版本继续尝试安装sass。

    本地环境:

    win10

    vue2

    vue-cli 5

    sass安装

    vue create testsass

    1. npm i node-loader
    2. added 2 packages in 6s
    3. npm i sass-loader
    4. added 1 package in 3s

    测试

    改HelloWorld.vue:

    1. <div id="sass">
    2. test sass
    3. </div>
    4. <style lang="scss">
    5. $color: #F90;
    6. #sass {
    7. background: $color;
    8. }
    9. </style>

    简单! 方便! nice!  o(* ̄▽ ̄*)ブ

    感觉好治愈,如此的丝滑~

    sass使用

    官方网址:Sass世界上最成熟、稳定和强大的CSS扩展语言 | Sass中文网

    简单教程:

    包括两种语法格式scss,sass。scss与css差不多,sass格式使用 “缩进” 代替 “花括号” 表示属性属于某个选择器,用 “换行” 代替 “分号” 分隔属性。

    sass:

    1. <style lang="sass">
    2. $color: #F90F11;
    3. #sass
    4. background: $color;
    5. </style>

     很像python……sass基于Ruby,看起来和python无关,估计都借鉴了perl。

    ruby和python关系:Python和Ruby

    perl官网:The Perl Programming Language - www.perl.org

    所以安装sass为啥需要python2,别问我为啥知道的……各种报错解决……

    “在 Node.js 中,采用 gyp 构建工具进行构建 C++ 代码,而 GYP 是基于 Python 2 开发的,所以需要 python,而且不支持 3。”

    详见:npm安装某些模块为什么需要python? - 知乎

    再次感叹,python好强大。但是还是喜欢php……python的语法比java还不习惯……

    数据类型

    数字、字符串、颜色、布尔、空值(null)、数组(12em,2em)、maps 相当于js对象

    变量

    1. $width: 5em;
    2. $font_1:6px;
    3. $font-2:10px
    4. .div{
    5. width:$width;
    6. }
    7. .div .font1{
    8. font-sise:$font_1;
    9. }
    10. .div .font2{
    11. font-sise:$font-2;
    12. }

    默认变量值:!default,对应属性无值时使用,否则使用设定的值。

    运算

    支持+-*\,#{}内可以加变量,内容比较多,具体看文档吧~

    嵌套

    &父轩选择器,>选择子元素,+选择之后紧跟的元素, ~选择同级元素。可以群组嵌套,可以属性嵌套。

    1. $width: 5em;
    2. $font_1:6px;
    3. $font-2:10px;
    4. .div{
    5. width:$width;
    6. .font1{
    7. font-size:$font_1;
    8. }
    9. & .font2{
    10. font-size:$font-2;
    11. }
    12. h1,a{
    13. color:#123322;
    14. }
    15. border{
    16. size:10px;
    17. color:#555112;
    18. }
    19. }

     

    混合

    @mixin 混合器名(参数:默认值)

    1. @mixin rounded-corners($color) {
    2. -moz-border-radius: 5px;
    3. -webkit-border-radius: 5px;
    4. border-radius: 5px;
    5. color: $color;
    6. }
    7. .notice {
    8. background-color: green;
    9. border: 2px solid #00aa00;
    10. //color: #fff;
    11. width: 100px;
    12. height: 100px;
    13. @include rounded-corners(#fffccc);
    14. }}

     

    导入

    @import 导入并可以嵌套,局部文件以“_”下划线开头不会编译成单独文件,原生css文件通过把后缀名修改为scss后可以导入。

    继承

    @extend 继承

    1. $radius:100px;
    2. .errormy{
    3. width: 100px;
    4. padding:{
    5. top:1em;
    6. bottom: 1em;
    7. };
    8. color: red;
    9. background: rgba($color: #000000, $alpha: .3);
    10. border-radius: $radius;
    11. }
    12. .error{
    13. color: #123322;
    14. @extend .errormy;
    15. border-radius: 10px;
    16. }

    函数

    函数列表:Sass: Built-In Modules

    符号两边要放空格,否则有可能编译失败。

  • 相关阅读:
    Spring的AOP (代理模式)
    华为机试 - 过滤组合字符串
    Python3 集合
    Python——Python程序的文件头部声明
    想一次拿下PMP考试,需要备考多久?
    微服务间通信重构与服务治理笔记
    Linux·【ftp】【nfs】【ssh】服务器搭建
    09循环嵌套
    Java-基于SSM的图书管理系统
    qt 获取系统主机名、UID序列号、以及磁盘空间等其他信息
  • 原文地址:https://blog.csdn.net/lsswear/article/details/127959274