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);
}
相关推荐
亿元程序员11 分钟前
小伙伴说我的拼图游戏用Mask不能合批...
前端
恋猫de小郭13 分钟前
AI 正在造就你的「认知卸载」,但是时代如此
前端·人工智能·ai编程
摸鱼的春哥1 小时前
Agent教程14:记忆才是Agent开发的核心
前端·javascript·后端
明月_清风1 小时前
Clipboard API 深度实战:如何同时存入“纯文本”和“富文本”两种格式?
前端·javascript
明月_清风1 小时前
权限陷阱:为什么你的“点击复制”在某些浏览器或 iframe 里会失效?
前端·javascript
掘金安东尼11 小时前
让 JavaScript 更容易「善后」的新能力
前端·javascript·面试
掘金安东尼11 小时前
用 HTMX 为 React Data Grid 加速实时更新
前端·javascript·面试
灵感__idea13 小时前
Hello 算法:众里寻她千“百度”
前端·javascript·算法
yinuo13 小时前
轻松接入大语言模型API -04
前端
袋鼠云数栈UED团队14 小时前
基于 Lexical 实现变量输入编辑器
前端·javascript·架构