sass中@mixin与 @include

@mixin与 @include

定义混入@mixin与 使用混入@include。

一、定义与使用混入

定义混入语法:

bash 复制代码
@mixin mixin-name样式名 {
	//...各属性
}

使用混入语法:

bash 复制代码
selector { 
	@include mixin-name
}

定义与使用混入demo

bash 复制代码
// 定义混入demo:
@mixin important-text {
	color: red;
  	font-size: 25px;
 	 font-weight: bold;
  	border: 1px solid blue;
}

//使用混入:	
.danger {
	@include important-text;
	background-color: red;
}

上面代码转为css代码为:

bash 复制代码
.danger {
  color: red;
  font-size: 25px;
  font-weight: bold;
  border: 1px solid blue;
  background-color: green;
}

二、混入中也可以包含混入

bash 复制代码
@mixin special-text {
  @include important-text;
  @include link;
  @include special-border;
}

三、向混入传递变量

定于带变量的混入

bash 复制代码
@mixin bordered($color, $width) {
	border: $width solid $color;
}

使用带变量的混入

bash 复制代码
.myArticle {
  @include bordered(blue, 1px);
}

四、混入变量可变参数

当不能确定一个混入或者一个函数的参数个数,就可使用...来设置可变参数。

定义可变参数混入

bash 复制代码
@mixin box-shadow($shadows...) {
      -moz-box-shadow: $shadows;
      -webkit-box-shadow: $shadows;
      box-shadow: $shadows;
}

使用可变参数混入

bash 复制代码
.shadows {
  @include box-shadow(0px 4px 5px #666, 2px 6px 10px #999);
}
相关推荐
IT_陈寒2 小时前
Vue这个坑我跳了两次,原来问题出在这
前端·人工智能·后端
kyriewen2 小时前
我用 50 行代码重写了 React Router 核心,终于搞懂了前端路由原理
前端·javascript·react.js
WebInfra3 小时前
Rspack 2.1 发布:React Compiler 提速 10 倍!
前端
李明卫杭州3 小时前
CSS 媒体查询详解:一文掌握响应式设计的核心技术
前端
lichenyang4533 小时前
从 H5 按钮到 OpenHarmony 能力调用:我如何理解 ASCF 的运行链路
前端
下家4 小时前
我放弃了 Vue/React,选择自研框架
前端·前端框架
Asize4 小时前
HTML5 Canvas 基础:从按帧动画到 ECharts 数据可视化
前端·javascript·canvas
默_笙4 小时前
🎄 后端给我一堆扁平数据,我 10 行代码把它变成了树
前端·javascript
Mahut4 小时前
我用 Electron + FFmpeg 做了一个本地视频处理工作站 ClipForge
前端·ffmpeg·electron
前端Hardy4 小时前
又一个 AI 神器火了!
前端·javascript·后端