📅  最后修改于: 2023-12-03 14:43:52.850000             🧑  作者: Mango
LESS是一种动态样式语言,可以在CSS中使用变量、函数、运算、嵌套等特性,使CSS更加易维护和可扩展。使用LESS可以将样式代码分解为多个模块,提高代码的复用性和可维护性。LESS可以通过命令行工具或在浏览器中使用编译器来将LESS代码编译成CSS代码。
使用npm全局安装less:
npm install -g less
使用@
符号定义变量:
@primary-color: #0275d8;
h1 {
color: @primary-color;
}
可以将子样式嵌套在父样式中:
.container {
h1 {
font-size: 24px;
}
p {
line-height: 1.5;
}
}
可以对数值进行加、减、乘、除等运算:
@base-font-size: 14px;
h1 {
font-size: @base-font-size * 2;
}
.container {
width: 100% / 3;
}
LESS内置了一些函数,可以用来处理颜色、数值等:
@primary-color: #0275d8;
.container {
background-color: darken(@primary-color, 10%);
}
可以使用导入来拆分样式表:
// variables.less
@primary-color: #0275d8;
// styles.less
@import "variables.less";
h1 {
color: @primary-color;
}
可以使用混合来定义一段可复用的样式:
.border-radius(@radius) {
border-radius: @radius;
-moz-border-radius: @radius;
-webkit-border-radius: @radius;
}
.box {
.border-radius(5px);
background-color: gray;
}
可以使用继承来复用已有的样式:
// 定义基础样式
.icon {
font-size: 20px;
color: #333;
}
// 继承基础样式
.success-icon {
.icon;
color: green;
}
// 继承基础样式
.error-icon {
.icon;
color: red;
}
可以使用循环来生成重复的样式:
@grid-columns: 12;
.column {
float: left;
}
// 循环生成12个列样式
.column-loop(@i) when (@i > 0) {
.column-@{i} {
width: (@i * 100% / @grid-columns);
}
.column-loop(@i - 1);
}
.column-loop(@grid-columns);
使用命令行工具编译LESS:
lessc styles.less styles.css
可以在浏览器中使用编译器来实时编译LESS代码。
LESS使得样式的编写变得更加模块化和易维护,提高了开发效率和代码复用性,也使得CSS更加灵活和可扩展。