LESS 扩展
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 TutorialsPoint</h2> <p>Hello!!!!!</p> </div> </body> </html>
接下来创建 style.less 文件.
/*style.less*/
h2 {
   &:extend(.style);
   font-style: italic;
}
.style {
   background: green;
}编译less文件
lessc style.less style.css
得到css文件
/*style.css*/
h2 {
   font-style: italic;
}
.style,
h2 {
   background: blue;
}输出
来执行以下步骤:
- 保存上面的HTML代码在 extend_syntax.html文件。 
- 在浏览器中打开该HTML文件,得到如下输出显示。 

扩展语法
扩展可以放入规则集或连接到一个选择器。它类似于包含一个或多个类,它们是由逗号分隔的伪类。使用可选的关键字all,每个选择器可以这样遵循。
例子
<!--extend_syntax.htm--> <!doctype html> <head> <link rel = "stylesheet" href = "style.css" type = "text/css" /> </head> <body> <div class = "style"> <h2>Welcome to TutorialsPoint</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;
}编译less文件
lessc style.less style.css
得到css文件
/*style.css*/
.style {
   background: #BF70A5;
}
.container,
.style {
   font-style: italic;
}
.img,
.style {
   font-size: 30px;
}输出
执行以下步骤:
- 保存上面的HTML代码在 extend_syntax.html文件。 
- 在浏览器中打开该HTML文件,得到如下输出显示。 

以下列表列出了所有的可用的扩展类型
- 1.扩展附加到选择器:扩展连接到一个选择器,类似于具有选择器作为参数的伪类。 
- 2.扩展内部规则集:&:extend延长(选择器)语法可以在规则集主体里面放。 
- 3.扩展嵌套选择器:嵌套选择器使用扩展选择器匹配。 
- 4.使用扩展精确匹配:默认情况下扩展外观选择器之间的精确匹配。 
- 5.nth表达式:第n个表达式的形式在某种程度上很重要,否则,它对待选择器将不同。 
- 6.扩展"all":当关键字 all 被最后确定在扩展参数,那么LESS匹配选择器作为另一个选择器部分。 
- 7.选择器插值扩展:在多大程度上可以被连接到内插选择器。 
- 8.作用域及扩展@media:扩展匹配选择器只存在相同的媒体声明中。 
- 9.重复检测:它不能检测选择器的重复。 
下面是扩展类型的用例:
- 1.经典用例:在Less中经典的用例是用来避开添加基类。 
- 2.减小CSS大小:扩展用于移动选择器尽量要使用属性,这有助于降低CSS生成代码。 
- 3.合并风格/更高级的混入:使用扩展我们可以结合特定选择器相同的风格到其他选择器。 
