zoukankan      html  css  js  c++  java
  • sass

    学习目标(sass less)

    熟悉sass的基本语法--八种核心的语法

    1. 变量(普通变量、特殊变量)
    2. 注释(单行注释,多行注释,重要注释)
    3. 嵌套(选择器嵌套 &)
    4. 混合(@mixin/@include)
    5. 继承(@extend)
    6. 局部文件(@import)
    7. 循环( @for @each )
    8. 算法(ceil,floor,random,abs......)

    熟悉sass几种不同的编译方式

    1. ruby命令行编译--不推荐
    2. gulp编译
    3. webpack编译

    项目中可以酌情使用sass(sass非常适合大型的项目)

    Sass介绍

    css的预编译框架:世界上最成熟、最稳定、最强大的专业级CSS扩展语言!

    CSS 不是一个编程语言,可以用它来开发网页样式,但是没有办法用它进行编程。SASS 的

    出现,让 CSS 实现了通过代码编程来实现的方式。

    SASS 是一种 CSS 开发工具,提供了许多便利的写法,让CSS 的处理实现了可编程处理。

    https://www.sass.hk/

    环境搭建及编译指令

    安装 ruby(sass的依赖环境,必须安装), gem:ruby自带包管理工具

    gem install sass(网络安装)

    测试是否安装成功:ruby -v gem -v sass -v

    sass的编译方式:webpack gulp ruby-sass koala软件 compass...

    ruby命令行编译sass文件

    进入sass文件目录 sass --watch sass文件的目录/. : 生成的css文件的目录/. --style expanded

    一个.scss文件生成两个文件(.css--样式问题 .map--调试文件)

    编译后输出格式

    默认情况下,SASS 提供了四种格式的 CSS 输入,默认情况输出是嵌套格式

    nested 嵌套(默认)

    compact 紧凑 每个选择器代码在一行

    expanded 扩展(完全格式化标准)

    compressed 全部压缩成一行

    sass 扩展名

    sass 有两种后缀名文件:

    第一种后缀名为 sass,不使用大括号和分号;

    第二种就是使用的 scss 文件,这种和写的 css 文件格式差不多,使用大括号和分号。

    在此也建议使用后缀名为 scss 的文件,以避免 sass 后缀名的严格格式要求而报错。

    Sass-变量定义

    变量:必须是$符号开头,后面紧跟变量名,变量名称和变量值之间要使用冒号:

    进行分隔(参考 CSS 属性和值的设定语法) ,如果值后面加上[!default]就表示默认值。

    引用变量的值,直接使用变量名称,即可引用定义的变量的值。

    特殊变量:一般情况下,我们定义的变量都是属性值,可以直接使用,但是如果变量作

    为属性或者其他的特殊情况下,必须使用#{$variable}的形式进行调用。

    注释

    SASS共有两种注释风格。

    标准的CSS注释 /* comment */ ,会保留到编译后的文件。

    单行注释 // comment,只保留在SASS源文件中,编译后被省略。

    在/*后面加一个感叹号,表示这是"重要注释"。即使是压缩模式编译,也会保留这行注释,通常 可以用于声明版权信息。

    Sass-嵌套

    选择器嵌套,在嵌套的过程中,如果需要用到父元素,在 SASS 中通过&符号引用父属性

    嵌套属性——不常用

    Sass-mixin函数

    sass 中可以通过@mixin 声明混合(混合宏),可以传递参数,参数名称以$开始,多个参数之 间使用逗号分

    隔,@mixin 的混合代码块由@include 来调用。

    Sass-继承扩展--@extend

    在 SASS 中,通过继承/扩展来减少重复代码,可以让一个选择器去继承另一个选择中所有

    的样式,子类的样式(占位继承--%)。

    Sass-导入(局部文件)

    CSS 本身包含一个指令@import,但是 CSS 中的@import 每次执行都会发送一次新的请求都会消耗一定的资源。

    当通过@import把sass样式分散到多个文件时,你通常只想生成少数几个css文件。那些专门为@import命令而编写的sass文件,并不需要生成对应的独立css文件,这样的sass文件称为局部文件。对此,sass有一个特殊的约定来命名这些文件。

    此约定即,sass局部文件的文件名以下划线开头。这样,sass就不会在编译时单独编译这个文件输出css,而只把这个文件用作导入。当你@import一个局部文件时,还可以不写文件的全名,即省略文件名开头的下划线。

    局部文件可以被多个不同的文件引用。当一些样式需要在多个页面甚至多个项目中使用时,这非常有用。在这种情况下,有时需要在你的样式表中对导入的样式稍作修改,sass有一个功能刚好可以解决这个问题,即默认变量值。

    Sass-判断语句

    @if 指令是 SASS 中的一个控制指令,用于在表达式满足条件(true)的时候输出指定的

    样式,在不满足条件(false)或者表达式为 null 的情况下输出其他的样式

    @if 条件 {

    // 当条件为真时执行的样式

    }

    同样,也可以通过@else if 和@else 指令结合,进行多条件的判断

    Sass-数组/map

    map 就是列表项目中带名称的列表

    $map:(key1:value1, key2:value2, key3:value3)

    length($map):获取 map 中的元素对个数

    map-get($map, key):获取$map 中名称为 key 的值

    map-has-key($map, key):判断在$map 中是否包含指定的 key

    Sass-循环语句--@for 指令在 SASS 中用于重复处理一组指令

    有两种表现形式

    @for $var from <开始值> through <结束值>

    @for $var from to

    to 和 through 都是表示一个区间,唯一的区别就是停止循环的地方不一样。$var 可以是

    任意一个变量名称如$i,是 SASS 表达式并且必须是整数

    @each

    Sass-function介绍

    函数的功能主要是数据的运算,SASS 中可以将一些值交给函数进行处理,具体的处理方式

    由定义的函数具体的设计确定。

    @function 函数名称(参数列表){

    // 数据处理

    }

  • 相关阅读:
    System.IO.MemoryStream.cs
    System.IO.Stream.cs
    System.Web.HttpContext.cs
    System.Text.Encoding.cs
    System.Web.HttpRuntime.cs
    System.Web.Caching.Cache.cs
    System.Diagnostics.Stopwatch.cs
    FrameBuffer
    Java实现 洛谷 P1422 小玉家的电费
    Java实现 洛谷 P1422 小玉家的电费
  • 原文地址:https://www.cnblogs.com/xz233/p/13568256.html
Copyright © 2011-2022 走看看