less和scss循环生成margin和padding

less

javascript 复制代码
// 循环生成 margin padding
.padding(@n, @i: 1) when (@i =< @n) {
  .pt-@{i} {
    padding-top: @i + 0px;
  }
  .pr-@{i} {
    padding-right: @i + 0px;
  }
  .pb-@{i} {
    padding-bottom: @i + 0px;
  }
  .pl-@{i} {
    padding-left: @i + 0px;
  }
  .p-@{i} {
    padding: @i + 0px;
  }
  .padding(@n, (@i + 1));
}

.margin(@n, @i: 1) when (@i =< @n) {
  .mt-@{i} {
    margin-top: @i + 0px;
  }
  .mr-@{i} {
    margin-right: @i + 0px;
  }
  .mb-@{i} {
    margin-bottom: @i + 0px;
  }
  .ml-@{i} {
    margin-left: @i + 0px;
  }
  .m-@{i} {
    margin: @i + 0px;
  }
  .margin(@n, (@i + 1));
}

.padding(200);
.margin(200);

scss

javascript 复制代码
// 循环生成 margin padding
@for $i from 0 through 200 {
  .m-#{$i} {
    margin: $i + px !important;
  }

  .mt-#{$i} {
    margin-top: $i + px !important;
  }

  .mb-#{$i} {
    margin-bottom: $i + px !important;
  }

  .ml-#{$i} {
    margin-left: $i + px !important;
  }

  .mr-#{$i} {
    margin-right: $i + px !important;
  }

  .p-#{$i} {
    padding: $i + px !important;
  }

  .pt-#{$i} {
    padding-top: $i + px !important;
  }

  .pb-#{$i} {
    padding-bottom: $i + px !important;
  }

  .pl-#{$i} {
    padding-left: $i + px !important;
  }

  .pr-#{$i} {
    padding-right: $i + px !important;
  }
}
相关推荐
蜡台2 分钟前
uni-indexed-list 之扩展组件实现城市列表带索引查询过滤功能
前端·vue.js·uniapp·uni-indexed
LaughingZhu7 分钟前
Product Hunt 每日热榜 | 2026-06-16
前端·人工智能·经验分享·chatgpt·html
snow@li10 分钟前
前端:构建工具(Vite / Webpack)的 文件指纹(File Hash) 机制 / 浏览器缓存控制
前端·webpack·哈希算法
ayqy贾杰36 分钟前
SpaceX 收购 Cursor,马斯克花600亿美元买了个代码编辑器
前端·人工智能·机器学习
云飞云共享云桌面9 小时前
传统工作站 vs 云飞云共享云桌面:制造业设计云桌面选型深度对比
运维·服务器·前端·网络·3d·架构·制造
UXbot9 小时前
如何选择适合公司项目的UI设计工具?企业选型指南
前端·低代码·ui·团队开发·原型模式·设计规范·web app
llz_1129 小时前
web-第四次课后作业
前端·spring boot·web
武清伯MVP10 小时前
前端跨域方案大合集
前端·javascript
一杯奶茶¥10 小时前
基于springboot的失物招领管理系统带万字文档 校园失物招领管理系统 失物认领管理系统java springboot vue
java·vue.js·spring boot·java项目
小刘|10 小时前
Spring AI Alibaba 集成和风天气 API 实战
java·服务器·前端