首页 > 其他分享 >Sass 混合指令mixin

Sass 混合指令mixin

时间:2023-12-27 22:33:06浏览次数:29  
标签:Sass color 指令 参数 mixin include size

目录

混合指令mixin是可以重用的一组CSS声明。mixin有助于减少重复代码,只需声明一次,就可在文件中引用。它有点类似于变量,但与变量不同的它可以定义一个样式片段,还可以像函数那样定义参数。

定义mixin

混合指令的用法是在 @mixin 后添加名称与样式,例如:

@mixin cont{
    color:red;
    size:13px;
}

引用mixin

引用mixin需要使用@include指令,例如引用上面例子中的混合指令:

body{
    @include cont;
}

编译结果如下:

body{
    color:red;
    size:13px;
}

参数

参数用于给混合指令中的样式设定变量,并且赋值使用。在定义混合指令的时候,按照变量的格式,通过逗号分隔,将参数写进圆括号里。引用指令时,按照参数的顺序,再将所赋的值对应写进括号:

@mixin cont($color:red,$size:13px){
    color:$color;
    size:$size;
}
body{
    @include cont(green,15px);
}

参数变量后面跟一个冒号可以设定参数默认值

编译结果如下:

body{
    color:green;
    size:15px;
}

传递多值参数

传递多值参数需要对参数进行 ... 运算,例如:

@mixin cont($shadow...){
    box-shadow:$shadow;
}

.header{
    @include(0px 4px 4px #555,2px 6px 10px #fff);
}

编译结果如下:

.header{
    box-shadow:0px 4px 4px #555,2px 6px 10px #fff;
}

传递内容

在引用混合样式的时候,可以先将一段代码导入到混合指令中,然后再输出混合样式,额外导入的部分将出现在 @content 标志的地方:

@mixin apply-to-ie6-only {
  * html {
    @content;
  }
}
@include apply-to-ie6-only {
  #logo {
    background-image: url(/logo.gif);
  }
}

//编译为

* html #logo {
  background-image: url(/logo.gif);
}

指令简写

为便于书写,@mixin 可以用 = 表示,而 @include 可以用 + 表示

标签:Sass,color,指令,参数,mixin,include,size
From: https://www.cnblogs.com/ewar-k/p/17931577.html

相关文章

  • node node-sass sass-loader版本对应问题(转)
    1.查看本地node版本node-v具体对应版本如下图:具体对应链接地址:node-sass2.查看项目中package中node-sass和sass-loader是否对应node版本3.不对应应修改成对应版本号以下是部分版本号对应,具体可百度sass-loader4.1.1,node-sass4.3.0sass-loader7.0.3,node-sass4.7.2......
  • 基于python的cat1模块的AT指令串口通信解析
    一前记使用cat1模块做产品的过程中,遇到了不少问题。其中很重要的一个就是怎么测试单个模块的好坏。这里笔者专门写了一个工具,来测试cat1模块的是否好用,这里做一个分享吧。 二源码解析这个是一个完全可以工作的程序,只需要改成你的模块的即可;#-*-coding:utf-......
  • Dart mixin 的一些理解
    本文主要介绍关于Dartmixin的一些理解。理解mixin概念的关键在于理解中间类。Mixinsareawayofreusingcodeinmultipleclasshierarchies先来看一个简单例子:classPiloted{intastronauts=1;voiddescribeCrew(){print('Numberofastronauts:$astrona......
  • 自定义指令
    介绍​除了Vue内置的一系列指令(比如v-model或v-show)之外,Vue还允许你注册自定义的指令(CustomDirectives)。我们已经介绍了两种在Vue中重用代码的方式:组件和组合式函数。组件是主要的构建模块,而组合式函数则侧重于有状态的逻辑。另一方面,自定义指令主要是为了重用......
  • pikafish引擎常用选项指令
    设置日志文件setoptionnameDebugLogFilevalueE:\刘永富\皮卡鱼230218\log.txt设置线程数1-1024默认1setoptionnameThreadsvalue2 设置哈希值默认16setoptionnameHashvalue12 清空哈希表setoptionnameClearHash 思考setoptionnamePondertrue ......
  • 在使用 npm install的时候提示node-sass command faile 解决方案
    在使用npminstall的时候错误提示node-sass相关的。错误信息如下图:解决方法(PS:凯哥的不适用)出现这种问题基本是由于node版本与sass版本不匹配导致的方案1:卸载node,安装对应版本方案2:修改sass版本修改sass版本,有可能导致其他依赖包出错,所以还是重新安装node版本。node-v4、查看node......
  • redis数据类型及指令
    ......1、list----------队列(先进先出)2、set-----------无序、两端取值、可遍历3、zset-----------有序set、两端取值、可遍历 String常用指令1、setkeyvalue2、getkey3、msetkey1val1key2val2.....4、mgetkey1key2.....5、setkey5----------设置字符......
  • nginx map 指令
    map指令是一项强大的功能,由ngx_http_map_module模块提供,默认情况下,nginx有加载这个模块,除非人为地排除(--without-http_map_module)。什么是map指令?map指令允许我们在Nginx配置文件中创建一个变量映射,以便根据输入变量的值映射到相应的输出变量值。这个特性可以用于根据特定......
  • 【Powershell】Powershell在远程计算机上执行指令
    开启并配置WinRM被远程机器执行前提:被远程的机器上开启可WinRM如果连接失败;则需要在被远程的机器上运行:Enable-PSRemoting-SkipNetworkProfileCheck-Force验证方法:WinRM处于Running状态防火墙rule处于Allow状态远程机器执行如果远程的计算机没有加入域(这里注意是执行远程指令的机......
  • el-select自定义指令用于触底加载分页请求options数据(附上完整代码和接口可直接用)
    问题描述某些情况下,下拉框需要做触底加载,发请求,获取option的数据为了方便复用,笔者封装了一个自定义指令另外也提供了一个简单的接口,用于演示我们先看看效果图效果图思路分析注意事项一el-select要不嵌入到body中为何,不嵌入到body标签中呢?答曰,更加方便自定义指令管理......