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 AXIHE.com</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 AXIHE.com</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 选择器插值扩展
extend 可以连接到内插选择器。
8 @media中的范围/扩展
扩展匹配仅在同一媒体声明内存在的选择器。
9 重复检测
它不能检测选择器的重复。
以下是扩展的用例类型

以下是扩展的用例类型

S.N. S.N.
1 经典用例
经典用例用于避免在LESS中添加基类。
2 减小CSS大小
Extend用于将选择器移动到要使用的属性,这有助于减少css生成的代码。
3 组合样式/更高级的Mixin
使用extend可以将特定选择器的相同样式组合到其他选择器中。

AXIHE / 精选资源

浏览全部教程

面试题

学习网站

前端培训
自己甄别

前端书籍

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili

关注我: Github / 知乎

于2021年离开前端领域,目前重心放在研究区块链上面了

我叫朱安邦,阿西河的站长

目前在杭州从事区块链周边的开发工作,机械专业,以前从事平面设计工作。

2014年底脱产在老家自学6个月的前端技术,自学期间几乎从未出过家门,最终找到了满意的前端工作。更多>

于2021年离开前端领域,目前从事区块链方面工作了