Less 教程
- 第1节:Less 安装
- 第2节:Less 嵌套规则
- 第3节:Less 操作
- 第4节:Less 转义
- 第5节:Less 函数
- 第6节:Less 命名空间和访问器
- 第7节:Less 变量范围
- 第8节:Less 注释
- 第9节:Less 导入
- 第10节:Less 变量
- 第11节:Less 扩展
- 第12节:Less 混合
- 第13节:Less 混合参数
- 第14节:Less Mixins函数
- 第15节:Less 将规则集传递给Mixins
- 第16节:Less 导入指令
- 第17节:Less 导入选项
- 第18节:Less Mixin Guards
- 第19节:Less CSS Guards
- 第20节:Less 循环
- 第21节:Less 合并
- 第22节:Less 父选择器
- 第23节:Less 其他函数
- 第24节:Less 字符串函数
- 第25节:Less 列表函数
- 第26节:Less 数学函数
- 第27节:Less 类型函数
- 第28节:Less 颜色定义函数
- 第29节:Less 颜色通道函数
- 第30节:Less 颜色操作
- 第31节:Less 颜色混合函数
- 第32节:Less 命令行用法
- 第33节:Less 在浏览器中使用
- 第34节:Less 浏览器支持
- 第35节:Less 插件
- 第36节:Less 程序化使用
- 第37节:Less 在线编译器
- 第38节:Less GUIs
- 第39节:Less 编辑器和插件
- 第40节:Less 第三方编译器
- 第41节:Less 框架
Less 扩展
Extend是一个LESS伪类,它通过使用:extend 选择器在一个选择器中扩展其他选择器样式。
例子
以下示例演示如何在LESS文件中使用 extend :
extend_syntax.htm
<!doctype html>
<head>
<link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
<div class="style">
<h2>Welcome to test</h2>
<p>Hello!!!!!</p>
</div>
</body>
</html>
接下来,创建文件 style.less
style.less
h2 {
&:extend(.style);
font-style: italic;
}
.style {
background: green;
}
您可以使用以下命令将 extend.less 文件编译为 extend.css :
lessc style.less style.css
接下来执行上面的命令,它将用下面的代码自动创建 style.css 文件:
style.css
h2 {
font-style: italic;
}
.style,
h2 {
background: green;
}
输出
让我们执行以下步骤,看看上面的代码如何工作:
将上述 html 代码保存在 extend_syntax.htm 文件中。
在浏览器中打开此 HTML 文件,将显示如下输出。
扩展语法
扩展放置在规则集中或附加到选择器。 它类似于包含一个或多个类的伪类,它们之间用逗号分隔。 使用可选的关键字全部,可以跟踪每个选择器。
例子
以下示例演示如何在 LESS 文件中使用 extend 语法:
extend_syntax.htm
<!doctype html>
<head>
<link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
<div class="style">
<h2>Welcome to test</h2>
<div class="container">
<p>Hello!!!!!</p>
</div>
</div>
</body>
</html>
接下来,创建文件 style.less
style.less
.style:extend(.container, .img)
{
background: #BF70A5;
}
.container {
font-style: italic;
}
.img{
font-size: 30px;
}
您可以使用以下命令将 style.less 文件编译为 style.css :
lessc style.less style.css
接下来执行上面的命令,它将用下面的代码自动创建 style.css 文件:
style.css
.style {
background: #BF70A5;
}
.container,
.style {
font-style: italic;
}
.img,
.style {
font-size: 30px;
}
输出
让我们执行以下步骤,看看上面的代码如何工作:
将上述html代码保存在 extend_syntax.htm 文件中。
在浏览器中打开此 HTML 文件,将显示如下输出。
下表列出了您可以在LESS中使用的所有类型的扩展语法:
S.N. | 类型及描述 |
---|---|
1 | 扩展附加到选择器 扩展连接到一个选择器,该选择器看起来类似于具有选择器作为参数的伪类。 |
2 | 扩展内部规则集 &:extend(selector)语法可以放在规则集的正文中。 |
3 | 扩展嵌套选择器 使用 extend 选择器匹配嵌套选择器。 |
4 | 完全匹配与扩展 默认情况下, extend 查找选择器之间的完全匹配。 |
5 | nth表达式 nth表达式的形式在其他情况下很重要,它将选择器视为不同。 |
6 | 扩展“all" 当最后在扩展参数中识别出关键字 all 时,LESS将该选择器作为另一个选择器的一部分。 |
7 | 选择器插值扩展 |
8 | @media中的范围/扩展 扩展匹配仅在同一媒体声明内存在的选择器。 |
9 | 重复检测 它不能检测选择器的重复。 |
以下是扩展的用例类型
S.N. | S.N. |
---|---|
1 | 经典用例 经典用例用于避免在LESS中添加基类。 |
2 | 减小CSS大小 Extend用于将选择器移动到要使用的属性,这有助于减少css生成的代码。 |
3 | 组合样式/更高级的Mixin 使用extend可以将特定选择器的相同样式组合到其他选择器中。 |