less基本使用

1 less中的变量

css 复制代码
//对值进行声明
@link-color: #ccc

//定义变量名称
.@{sleName} {}

@bg: background-color;
//定义属性名称
.container {
	@{bg}: red;
}

2 继承(复用重复样式)

css 复制代码
//继承必须位于选择器最后
//继承选择器名不能为变量
.a:hover:extend(.b) {}

.a {
	&:extend(.b,.c,.d) {}
}

.b {
	.c{}
}
//继承嵌套结构内样式需要加上all
.a:extend(.b all) {}

3 混合

用于值不确定的场景

css 复制代码
//@arguments表示传入的所有参数
.flex(@flex: 1){
	flex: @flex
}

.a {
	.flex(2);
}

//条件mixins
.bg (@color; @width) when (@width >= 50%) {}

4 合并

css 复制代码
//相同步骤需要把符号改成+_
.mixin(){
	transform+_: scale(2);
}

5 将颜色字符串转换为可以使用的颜色

css 复制代码
.color {
	color: color("#fff");
}

6 获取图片文件的尺寸

css 复制代码
.img {
	width: image-width("file.png");
	height: image-height("");
	background-size: image-size("file.png");
}

7 单位转换函数

css 复制代码
.convert {
	time: convert(9s,"ms");
}

8 将内联资源转换为base64或text/html格式

css 复制代码
.img {
	background: data-uri('../data/image.jpg');
}

9 实践

css 复制代码
.flex(@jc:center,@ai:center, @fd: row, @fw: nowrap) {
	display: flex;
	justify-content: @jc;
	align-items: @ai;
	flex-direction: @fd;
	flex-wrap: @fw;
}

.flex_sb_c_w {
	.flex(space-between,center,row,wrap);
}
相关推荐
陈随易3 小时前
有生之年系列,Nodejs进程管理pm2 v7.0发布
前端·后端·程序员
冰暮流星3 小时前
javascript之事件代理/事件委托
前端
陈随易4 小时前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
里欧跑得慢7 小时前
17. Flutter Hero动画实现:让界面过渡更加优雅
前端·css·flutter·web
IT_陈寒7 小时前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端
kyriewen7 小时前
前端测试:别为了100%覆盖率而写测试,那是自欺欺人
前端·javascript·单元测试
去伪存真7 小时前
我自己写的第一个skills--project-core-standards
前端·agent
Data_Journal8 小时前
如何使用cURL更改User Agent
大数据·服务器·前端·javascript·数据库
竹林8188 小时前
wagmi v2 多链钱包切换:一个 Uniswap 仿盘项目让我踩了三天坑
前端·javascript
donecoding8 小时前
Playwright MCP 页面捕获:Snapshot、截图、HTML 到底选哪个?
前端·ai编程·前端工程化