sass高阶应用
Sass(尤其是 SCSS 语法)除了基础功能外,还提供了许多高级特性,可以实现更灵活、可维护的样式系统。以下是 Sass 的 高级语法和应用技巧,适合中大型项目或组件库开发。
文章目录
- 一、控制指令(Control Directives)
- 1. `@if / @else`
- 2. `@for` 循环
- 3. `@each` 遍历列表/Map
- 4. `@while` 循环
- 二、函数与自定义逻辑
- 1. 自定义函数
- 2. 内置函数
- 三、模块化与命名空间(`@use` / `@forward`)
- 1. 模块化导入(`@use`)
- 2. 命名空间别名
- 3. 转发模块(`@forward`)
- 四、占位符选择器 `%`
- 五、动态插值 `#{}`
- 六、继承与组合(`@extend`)
- 七、建议
一、控制指令(Control Directives)
1. @if / @else
用于根据条件生成不同的 CSS。
@mixin button-style($type) {background: #ccc;@if $type == primary {background: #3498db;color: white;} @else if $type == danger {background: #e74c3c;color: white;} @else {background: #ecf0f1;color: #333;}
}.btn {@include button-style(primary);
}
2. @for
循环
可用于批量生成类名,如网格布局、按钮大小等。
@for $i from 1 through 5 {.col-#{$i} {width: 20% * $i;}
}
3. @each
遍历列表/Map
适用于遍历颜色、字体、断点等配置项。
$colors: (primary: #3498db,success: #2ecc71,danger: #e74c3c
);@each $name, $color in $colors {.text-#{$name} {color: $color;}.bg-#{$name} {background-color: $color;}
}
4. @while
循环
虽然不常用,但可以用于特定逻辑。
相关文章:
sass高阶应用
Sass(尤其是 SCSS 语法)除了基础功能外,还提供了许多高级特性,可以实现更灵活、可维护的样式系统。以下是 Sass 的 高级语法和应用技巧,适合中大型项目或组件库开发。 文章目录 一、控制指令(Control Directives)1. `@if / @else`2. `@for` 循环3. `@each` 遍历列表/Map…...
docker docker-ce docker.io
Ubuntu安装 更新软件包列表 首先确保软件包列表是最新的: sudo apt-get update 使用正确的卸载命令 替换 docker-engine 为 docker-ce 或 docker.io: sudo apt-get remove docker docker-ce docker.io containerd runc 检查已安装的 Do…...

DQN和DDQN(进阶版)
来源: *《第五章 深度强化学习 Q网络》.ppt --周炜星、谢文杰 一、前言 Q表格、Q网络与策略函数 Q表格是有限的离散的,而神经网络可以是无限的。 对于动作有限的智能体来说,使用Q网络获得当下状态的对于每个动作的 状态-动作值 。那么 a…...

【组件】翻牌器效果
目录 效果组件代码背景素材 效果 组件代码 <template><divclass"card-flop":style"{height: typeof height number ? ${height}px : height,--box-width: typeof boxWidth number ? ${boxWidth}px : boxWidth,--box-height: typeof boxHeight nu…...

CentOS 7 环境中部署 LNMP(Linux + Nginx + MySQL 5.7 + PHP)
在 CentOS 7 环境中部署 LNMP(Linux Nginx MySQL 5.7 PHP) 环境的详细步骤如下。此方案确保各组件版本兼容,并提供完整的配置验证流程。 1. 更新系统 sudo yum update -y 2. 安装 MySQL 5.7 2.1 添加 MySQL 官方 YUM 仓库 由于MySQL并不…...

NX811NX816美光颗粒固态NX840NX845
NX811NX816美光颗粒固态NX840NX845 美光NX系列固态硬盘颗粒深度解析:技术、性能与市场全景透视 一、技术架构与核心特性解析 1. NX811/NX816:入门级市场的平衡之选 技术定位:基于176层TLC(Triple-Level Cell)3D NAN…...

捋捋wireshark
本猿搬砖时会用到wireshark分析pcap包,但频率不高,记过一些笔记,今天捋捋,希望能给初学者节省一点时间。 wireshark是个网络封包分析软件(network packet analyzer),可以用来抓流量包ÿ…...

c++学习之---模版
目录 一、函数模板: 1、基本定义格式: 2、模版函数的优先匹配原则: 二、类模板: 1、基本定义格式: 2、类模版的优先匹配原则(有坑哦): 3、缺省值的设置: 4、ty…...
MyBatis-Flex 全面指南:下一代轻量级持久层框架实战入门
🚀 MyBatis-Flex 全面指南:下一代轻量级持久层框架实战入门 本文将带你全面了解 MyBatis-Flex 的特性、常见用法、最佳实践,帮助你高效构建更简洁、更灵活的 Java 持久层代码。 🧩 什么是 MyBatis-Flex? MyBatis-Flex…...

第十六章 EMQX黑名单与连接抖动检测
系列文章目录 第一章 总体概述 第二章 在实体机上安装ubuntu 第三章 Windows远程连接ubuntu 第四章 使用Docker安装和运行EMQX 第五章 Docker卸载EMQX 第六章 EMQX客户端MQTTX Desktop的安装与使用 第七章 EMQX客户端MQTTX CLI的安装与使用 第八章 Wireshark工具的安装与使用 …...
WebSphere(WAS)
WebSphere (WebSphere Application Server)为 SOA 环境提供软件,以实现动态的、互联的业务流程,为所有业务情形提供高度有效的应用程序基础架构。WebSphere 是 IBM 的应用程序和集成软件平台,包含所有必要的中间件基础…...
新编辑器编写指南--给自己的备忘
欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 新的改变 我们对Markdown编辑器进行了一些功能拓展与语法支持&#x…...
xPSR
在 ARM Cortex-M3 中,xPSR(组合程序状态寄存器) 是核心的状态控制寄存器,由三个子状态寄存器合并而成,用于记录处理器的运算状态、中断状态和执行环境。以下是其深度解析: 🔍 一、xPSR …...

鸿蒙网络数据传输案例实战
一、案例效果截图 二、案例运用到的知识点 核心知识点 网络连接管理:connection模块HTTP数据请求:http模块RPC数据请求:rcp模块文件管理能力:fileIo模块、fileUri模块 其他知识点 ArkTS 语言基础V2版状态管理:Comp…...

【JavaEE】-- 网络原理
文章目录 1. 网络发展史1.1 广域网1.2 局域网 2. 网络通信基础2.1 IP地址2.2 端口号2.3 认识协议2.4 五元组2.5 协议分层2.5.1 分层的作用2.5.2 OSI七层模型(教科书)2.5.3 TCP/IP五层(或四层)模型(工业中常用ÿ…...

1.RV1126-OPENCV 交叉编译
一.下载opencv-3.4.16.zip到自己想装的目录下 二.解压并且打开 opencv 目录 先用 unzip opencv-3.4.16.zip 来解压 opencv 的压缩包,并且进入 opencv 目录(cd opencv-3.4.16) 三. 修改 opencv 的 cmake 脚本的内容 先 cd platforms/linux 然后修改 arm-gnueabi.to…...

PySide6 GUI 学习笔记——常用类及控件使用方法(标签控件QLabel)
文章目录 标签控件QLabel及其应用举例标签控件QLabel的常用方法及信号应用举例Python 代码示例1Python 代码示例2 小结 标签控件QLabel及其应用举例 QLabel 是 PySide6.QtWidgets 模块中的一个控件,用于在界面上显示文本或图像。它常用于作为标签、提示信息或图片展…...

CSS (mask)实现服装动态换色:创意与技术的完美融合
在网页开发中,我们常常会遇到需要对图片元素进行个性化处理的需求,比如改变图片中特定部分的颜色。今天,我们就来探讨一种通过 CSS 和 JavaScript 结合,实现服装动态换色的有趣方法。 一、代码整体结构分析 上述代码构建了一个完…...

基于51单片机的音乐盒汽车喇叭调音量proteus仿真
地址: https://pan.baidu.com/s/1l3CSSMi4uMV5-XLefnKoSg 提取码:1234 仿真图: 芯片/模块的特点: AT89C52/AT89C51简介: AT89C51 是一款常用的 8 位单片机,由 Atmel 公司(现已被 Microchip 收…...

彻底理解Spring三级缓存机制
文章目录 前言一、Spring解决循环依赖时,为什么要使用三级缓存? 前言 Spring解决循环依赖的手段,是通过三级缓存: singletonObjects:存放所有生命周期完整的单例对象。(一级缓存)earlySingleto…...
MacOs 安装局域网 gitlab 记录
1、安装git brew install git > Downloading https://homebrew.bintray.com/bottles/git-2.7.0.el_capitan.bottle ######################################################################## 100.0% > Pouring git-2.7.0.el_capitan.bottle.tar.gz > Caveats The O…...
Flutter 与 Android 原生布局组件对照表(完整版)
本对照表用于帮助 Android 开发者快速理解 Flutter 中的布局组件与原生布局的关系。 📘 Flutter ↔ Android 布局组件对照表 Flutter WidgetAndroid View/Layout说明ContainerFrameLayout / View通用容器,可设置背景、边距、对齐等RowLinearLayout (hor…...

【产品经理从0到1】自媒体端产品设计
后台的定义 “后台” 与“前台”都是相对独立的平台,前台是服务于互联网用户的平台 ,后台主要是支撑前台页面内容、数据及对前台业务情况的统计分析的系统; 后台与前台的区别 第1:使用用户不同 前台用户:互联网用户…...

017搜索之深度优先DFS——算法备赛
深度优先搜索 如果说广度优先搜索是逐层扩散,那深度优先搜索就是一条道走到黑。 深度优先遍历是用递归实现的,预定一条顺序规则(如上下左右顺序) ,一直往第一个方向搜索直到走到尽头或不满足要求后返回上一个叉路口按…...
解决 maven编译项目-Fatal error compiling: 无效的目标发行版: 21 -> [Help 1]
目录 1. 问题描述 2. 排查思路 3. 设置-指定maven使用jdk21 4. 参考资料 1. 问题描述 在idea中使用maven编译时,在系统环境变量中已经设置了jdk为21,但是在执行mvn package时,确提示 Fatal error compiling: 无效的目标发行版: 21 -> [Help 1] [ERROR] Failed to e…...

Thinkphp6实现websocket
项目需要连接一台自动售货机,售货机要求两边用websocket连接,监听9997端口。本文实现了一个基于PHP的WebSocket服务器,用于连接自动售货机,支持start/stop/restart命令操作 1.新建文件 新建文件 /command/socket.php <?php namespace a…...

web-css
一.CSS选择器: 1.基础选择器 基本选择器: >.标签选择器 格式:标签名称{} >.类选择器(重) 格式:.class属性的值{} >.id选择器 格式:#id属性的值{} >.通配符(表示所有&am…...
关于 smali:2. 从 Java 到 Smali 的映射
一、对照 Java 代码与 Smali 代码差异 1.1 方法调用差异:Java vs Smali Java 方法分类: 方法类型Java 示例Smali 指令特点说明静态方法Utils.print("hi")invoke-static没有 this 指针实例方法obj.show()invoke-virtual有 this,虚…...

三、zookeeper 常用shell命令
作者:IvanCodes 日期:2025年5月28日 专栏:Zookeeper教程 ZooKeeper Shell (zkCli.sh) 是与ZooKeeper服务器交互的核心工具。本教程将详细介绍常用命令,并重点解析ZooKeeper数据节点 (ZNode) 的特性与分类。 思维导图 一、连接 Zo…...

分布式流处理与消息传递——Paxos Stream 算法详解
Java 实现 Paxos Stream 算法详解 一、Paxos Stream 核心设计 #mermaid-svg-cEJcmpaQwLXpEbx9 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-cEJcmpaQwLXpEbx9 .error-icon{fill:#552222;}#mermaid-svg-cEJcmpaQw…...