css拓展语言 sass


css拓展语言css

  • sass一种帮助你简化css工作流程的方式 帮助你更容易维护和开发css内容

  • sass是目前为止世界上最成熟 稳定和强大的专业级css拓展语言

  • sass是用ruby语言写的,但是两者的语法没有关系

sass语法

  • sass文件后缀名
    sass后缀名有两种 一种后缀名为sass 不适用大括号与分号
    另一种是scss文件 这种和平时使用的css文件差不多 使用大括号与分号

  • 使用变量
    sass最重要的特性就是为css引入了变量 我们可以吧反复使用的css属性值定义为变量 然后通过变量名来引用他们 二无需重复书写这一过程

    • sass使用$符号来标识变量

    • 变量声明:$highlight-color: #F90;
      这意味着变量$highlight-color现在的值是#f90
      任何可以用作css的属性值的赋值都可以用作sass的变量值 甚至是以空格分隔的多个属性值 或以逗号分隔的多个属性值
      变量可以定义在规则快内和规则快外

    • 变量引用:变量之间可以互相引用

    • 变量名
      sass变量名可以与css中的属性名和选择器名称相同 包括中划线和下划线
      在sass中下划线与中划线是相互兼容的

  • sass选择器可以互相嵌套

    • 父选择器
      在使用伪类选择器时 如 :hover 要在徐娜则其之前加入&
      当包含夫选择器标识符的嵌套给i则被打开时 他不会像后代选择器那样进行拼接 而是&被父选择器直接替代

    • 群组选择器

    • 子组合选择器和同层组合选择器
      “>” “+” “~”
      上面这三个选择器必须和其他选择器配合使用 以指定浏览器仅选择某种特定上下文中的元素

      子组合选择器:> 选择一个元素的直接子元素
      同层相邻组合选择器: + 选择后面紧跟着的元素
      同层全体组合选择器: ~ 选择所有之后的同层元素 不管他们之间隔了多少元素

    • 嵌套属性
      吧属性名从-的地方划开 在根属性后加个冒号 紧跟一个{}块,
      吧子属性写在这个{}块中

  • 导入sass文件 @import “文件名”

    • 默认变量值 !default
    • 原生css可以导入
  • 混合器
    使用混合器来实现大段样式的重用
    使用@mixin标识符定义
    使用@include 定义的名字 来进行引用
    可以使用混合器吧样式中的通用样式抽离出来,然后在其他地方重用

    • 选择器的链式继承
      继承也可以嵌套 互相继承

      1
      2
      3
      4
      5
      6
      7
      8
      .one{
      }
      .two{
      @extend .one
      }
      .three{
      @extend .two
      }
    • 继承的局限性
      也有很多选择器不被支持继承
      如 包含选择器(.one.two)
      或相邻兄弟选择器(.one+.two)目前不支持继承

    • 不要太过于依赖继承 后期很难修改和维护

  • sass函数

    • 字符串函数
    • 数字函数
    • 列表函数
    • introspection函数
    • 三元函数
    • 颜色函数

sass编译css

  • cmd编译
    sass sass.文件名 css.文件名

  • vscode编译
    下载 easy sass 重启后在编写完的sass文件界面保存就会自动生成sass文件


文章作者: 贾志飞
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 贾志飞 !
评论
  目录