【高端】几个关于SCSS中for循环的高级玩法

简介: 【高端】几个关于SCSS中for循环的高级玩法

简单版

@for $i from 1 through 6 {
  &:nth-of-type(#{$i}) img {
    transition-delay: calc(0.1 *#{$i}s);//逐次延时效果
  }
}

进阶版

@for $i from 1 through length($数组) {
  $color: nth($数组, $i);
  &:nth-of-type(#{$i}) {
    color: $color;//通常用于序列颜色显示效果
    &:hover {
      color: white;
    }
  }
}

混合版

$bg-color: "blue", "lightBlue", "green", "orange", "yellow", "purple", "pink", "red", "lightRed";
$bgColors: $blue, $lightBlue, $green, $orange, $yellow, $purple, $pink, $red, $lightRed;
@for $i from 1 through length($bg-color) {
//通过颜色属性定位不同节点,制定进行颜色样式设置
  &[bg-color="#{nth($bg-color, $i)}"] {
    color: white;
    background-color: nth($bgColors, $i);
    background-image: url("static/img/v-html/bg/#{nth($bg-color, $i)}.jpg");
  }
}

复杂序列逐帧动画

<style lang='scss' scoped>
.sg-body {
  animation: sg-animate 2s infinite alternate; //在两秒内完成序列png动画图片来回播放,并循环无限次
  $bgPreUrl: "http://www.shuzhiqiang.com/img/bg_"; //序列图路径前缀
  @keyframes sg-animate {
    $len: 75; //逐帧动画画面自由75张图
    @for $i from 0 through $len {
      #{ $i * 1% } {
        background-image: url(#{$bgPreUrl}#{$i}.png);
      }
    }
    // 序列图播放完毕那一刻到100%时间(第2s结束那一刻)之间都停留在最后一张序列图静止不动
    #{ $len * 1% },
    100% {
      background-image: url(#{$bgPreUrl}#{$len}.png);
    }
  }
}
</style>

编译后的CSS代码如图

……


相关文章
|
JavaScript 前端开发 搜索推荐
【庖丁解牛】vue-element-admin前端CRUD通用操作组件详解
【庖丁解牛】vue-element-admin前端CRUD通用操作组件详解
2106 0
【庖丁解牛】vue-element-admin前端CRUD通用操作组件详解
|
Rust JavaScript 前端开发
【Rust 实战】Rust 与 Wasm
【Rust 实战】Rust 与 Wasm
2930 0
【Rust 实战】Rust 与 Wasm
|
8月前
|
前端开发
Promise.all()方法的作用是什么?
Promise.all()方法的作用是什么?
642 121
|
6月前
|
关系型数据库 MySQL 数据库
【赵渝强老师】MySQL的事务隔离级别
数据库并发访问时易引发数据不一致问题。如客户端读取到未提交的事务数据,可能导致“脏读”。MySQL通过四种事务隔离级别(读未提交、读已提交、可重复读、可序列化)控制并发行为,默认为“可重复读”,以平衡性能与数据一致性。
385 0
在Vue3项目中使用 vue3-seamless-scroll 无缝滚动插件
本文介绍了如何在Vue3项目中使用`vue3-seamless-scroll`插件实现无缝滚动效果,并提供了详细的示例代码和运行效果。
8398 0
|
前端开发 开发者
如何理解 package.json 中的 proxy 字段?
`package.json` 中的 `proxy` 字段用于配置代理服务器,帮助前端开发中解决跨域问题及模拟后端响应。其基本概念、使用场景及配置方法将在本文中详细探讨,助力开发者高效调试与测试。
504 4
|
存储 前端开发 开发者
scss概念及使用
【7月更文挑战第11天】
609 1
|
JavaScript
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)(下)
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
323 0
|
前端开发 JavaScript 安全
前端JS实现密码校验键盘横竖、26字母、相同字母、相同数字、密码包含用户名、数字 字母不能连续 不能相同三个、不能横向 竖向 连续三个 包含字符、不能有中文符号
该 JavaScript 代码实现了一个严格的密码校验功能,确保密码满足多种安全要求,包括长度、字符类型、不包含中文及特殊字符、不与用户名相似等。通过多个辅助函数,如 `validateFormat` 检查密码格式,`isHasChinaCharFun` 检测中文符号,`getCharAll` 生成键盘组合,以及 `checkPasswordFun` 综合验证密码的有效性和安全性。此工具对于提高用户账户的安全性非常有用。
837 0
|
JavaScript 前端开发
文本,wangEditor5教程-上传图片,在开发文档的菜单配置当中,去搜索里搜索图片,也可以找到,上传图片必须有服务端的图片,验证接口正确用postman,wangEditor的postman接口
文本,wangEditor5教程-上传图片,在开发文档的菜单配置当中,去搜索里搜索图片,也可以找到,上传图片必须有服务端的图片,验证接口正确用postman,wangEditor的postman接口

热门文章

最新文章

下一篇
开通oss服务