zoukankan      html  css  js  c++  java
  • sass实用知识点

    本文总结sass相关核心知识点

    说明:本文的内容是,我在开发实践中总结的实用性比较强的sass知识点,其他未涉及的知识,如果对你有作用请自行查阅

    sass知识目录

    嵌套
    注释
    SassScript
    @规则
    Mixin指令


    1. 嵌套

      一般写法
          div{
              p {} 
          }
      &父选择器引用
          div{
              &:hover {}
              &-span { background:red; }
          }
      相同前缀的css样式简写形式 
          div{
              font: {
                  family: fantasy;
                  size: 30em;
                  weight: bold;
              }
          }
          div{
              font: 20px/24px fantasy {
                  weight: bold;
              }
          }
      
    2. 注释

      多行注释 /* */ 会被编译成css中的注释
      单行注释 // 在编译后的css中去除
      
    3. SassScript

      声明变量 
          局部变量 $ 2px;
          全局变量 $ 50px !global;
      数据类型
          number -> 1 11.1 11px
          string -> "title"
              应用
                  $name: "p";
                  div #{$name} {
                       100px;
                  }
          color -> red
          boolean -> true
          null -> null
          list -> 11px 10px 12px 或者 11px, 10px, 12px
          map -> (key: value, key1: value1)
          function
      运算符
          + - * / % < > <= >=
          其中 / 运算只在以下三种情况中生效
              $width/2 和变量运算
              (10px/8px) 加上小括号
              5px + 8px/2px 作为其他运算表达式的一部分
      
    4. @规则

      @import 导入其他的css,scss文件
          @import "demo"; 等效于 @import "demo.scss";
          scss文件默认会编译成css文件,如果你的scss文件只想被其他文件import,可以在定义的文件名前面加上_
              如 _demo.scss 然后使用 @import "demo" 即可
          嵌套的@import
              假设_demo.scss文件中定义了如下的css
                  div{
                       100%;
                  }
              在main.css中导入
                  .box {
                      @import "demo";
                  }
              将编译成    
                  .box div{
                       100%;
                  }
      @media 嵌套
          编译后@media包裹在选择器的最上面,在做响应式时候,这种写法可以避免重复书写选择器
          div {
               100%;
              @media screen {
                  height: 100%;
              }
          }
      @extend 选择器替换继承
          基本使用
              div{ 
                   100%;
              }
              div.box {
                  height: 100%;
              }
              #id{
                  @extend div;
              }
              相当于将包含div的选择器的样式复制一份,然后把div替换成#id,编译后结果如下
              div, #id {
                   100%;
              }
              div.box, .box#id {
                  height: 100%;
              }
          占位符
              div ye%box{
                   100%;
              }
              #id{
                  @extend %box;
              }
              编译后结果
              div ye#id {
                   100%;
              }
      
    5. Mixin指令

      相当于定义函数
          @mixin size($w, $h) {
               $w;
              height: $h;
          }
          div{
              @include size(100%, 100%);
          }
      
  • 相关阅读:
    Promise关键知识
    CSS实现简易的轮播图
    绝对定位和相对定位的一些特性
    行内元素及其浮动
    webpack实践总结
    less语法详解
    js模拟事件
    jquery各种事件绑定的区别
    前端路由实现的关键知识点
    js鼠标事件相关知识
  • 原文地址:https://www.cnblogs.com/ye-hcj/p/8321331.html
Copyright © 2011-2022 走看看