当前位置: 首页 > news >正文

less匹配模式

less里面的匹配模式相当于js里面的if,但又不完全是,比如用css画一个三角
html
<div class="sanjiao"></div>

less

.sanjiao{
  width: 0px;
  height: 0px;
  overflow: hidden;
  border-width: 10px;
  border-color: red transparent transparent transparent;
  border-style: solid;
}
这是一个朝下的三角,那么想让它朝上怎么办呢,把border-color改成
border-color: transparent transparent red transparent;
就可以了

 

这个时候问题时,每次写这个三角都时候,一会向上,一会向下,都要写这么一堆吗,可以用匹配模式,
less
//匹配模式
.match(top,@w:10px,@c:red){
  border-width: @w;
  border-color: transparent transparent @c transparent;
}
.match(bottom,@w:10px,@c:red){
  border-width: @w;
  border-color: @c transparent transparent transparent;
}
.match(left,@w:10px,@c:red){
  border-width: @w;
  border-color: transparent @c transparent transparent;
}
.match(right,@w:10px,@c:red){
  border-width: @w;
  border-color: transparent transparent transparent @c;
}
//@_表示,不管上下左右都带上这个固定的样式
.match(@_,@w:10px,@c:red){
  width: 0px;
  height: 0px;
  overflow: hidden;
  border-style: solid;
}
.sanjiao{
  .match(bottom)
}
=>
.sanjiao {
  border-width: 10px;
  border-color: #ff0000 transparent transparent transparent;
  width: 0px;
  height: 0px;
  overflow: hidden;
  border-style: solid;
}

 

 

如果说上面的有点复杂,我们来个稍微简单点的,比如定位
html
<div class="posDiv"></div>
less
.pos(a){
  position: absolute;
}
.pos(r){
  position: relative;
}
.pos(f){
  position: fixed;
}
.posDiv{
  width: 100px;
  height: 100px;
  .pos(a);
}
=>
.posDiv {
  width: 100px;
  height: 100px;
  position: absolute;
}

 

转载于:https://www.cnblogs.com/wzndkj/p/9314386.html

相关文章:

  • 聊聊世界编程语言排行榜的事
  • CF467C George and Job
  • EF6 CodeFirst使用MySql
  • java面试题干货96-125
  • 计算机专业的男女问题
  • 夕阳下,归校的背影
  • 小程序之map地图上不能在覆盖层
  • 大家好,我是新人,请多多关照,(*  ̄3)(ε ̄ *)么么
  • mangodb的存储
  • DICOM文件添加私有Tag(DCMTK Private Tag)
  • unity中NavMeshAgent有关知识
  • Linux C语言编程基本原理与实践
  • JavaScript开篇-写法分类
  • Selenium学习之==Css Selector使用方法
  • HashMap实现原理及源码分析
  • [译]CSS 居中(Center)方法大合集
  • 【Leetcode】104. 二叉树的最大深度
  • CSS3 变换
  • Javascript设计模式学习之Observer(观察者)模式
  • js面向对象
  • KMP算法及优化
  • session共享问题解决方案
  • STAR法则
  • yii2中session跨域名的问题
  • 聊聊flink的BlobWriter
  • 前端临床手札——文件上传
  • 前嗅ForeSpider采集配置界面介绍
  • 全栈开发——Linux
  • 如何胜任知名企业的商业数据分析师?
  • 如何用Ubuntu和Xen来设置Kubernetes?
  • 如何用vue打造一个移动端音乐播放器
  • 数组的操作
  • 消息队列系列二(IOT中消息队列的应用)
  • 直播平台建设千万不要忘记流媒体服务器的存在 ...
  • ​ ​Redis(五)主从复制:主从模式介绍、配置、拓扑(一主一从结构、一主多从结构、树形主从结构)、原理(复制过程、​​​​​​​数据同步psync)、总结
  • ​520就是要宠粉,你的心头书我买单
  • ​LeetCode解法汇总2304. 网格中的最小路径代价
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • #14vue3生成表单并跳转到外部地址的方式
  • (ZT) 理解系统底层的概念是多么重要(by趋势科技邹飞)
  • (第27天)Oracle 数据泵转换分区表
  • (附源码)spring boot基于Java的电影院售票与管理系统毕业设计 011449
  • (力扣记录)235. 二叉搜索树的最近公共祖先
  • (转) ns2/nam与nam实现相关的文件
  • (转)平衡树
  • (转)视频码率,帧率和分辨率的联系与区别
  • .halo勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET Core中Emit的使用
  • .NET MVC之AOP
  • .Net mvc总结
  • .net php 通信,flash与asp/php/asp.net通信的方法
  • .net 受管制代码
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)...
  • .pyc文件是什么?
  • [ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧