Css 减:使用变量的继承
我第一次学习使用CSS预处理器(较少),并且在试图定义一个继承类的类时遇到了困难,而父类是一个变量名 这基本上就是我想做的:Css 减:使用变量的继承,css,less,font-awesome,web-essentials,Css,Less,Font Awesome,Web Essentials,我第一次学习使用CSS预处理器(较少),并且在试图定义一个继承类的类时遇到了困难,而父类是一个变量名 这基本上就是我想做的: @import "font-awesome/font-awesome.less" .icon-application-home{ .fa .fa-home; } 但由于fa在字体中的定义如下: @fa-css-prefix: fa; 那么less不会编译,因为它不识别.fa。所以我尝试了这个: @import "font-awesome/font
@import "font-awesome/font-awesome.less"
.icon-application-home{
.fa .fa-home;
}
但由于fa在字体中的定义如下:
@fa-css-prefix: fa;
那么less不会编译,因为它不识别.fa。所以我尝试了这个:
@import "font-awesome/font-awesome.less"
.icon-application-home{
.@{fa-css-prefix} .@{fa-css-prefix}-home;
}
然而,这也不起作用。有什么解决办法吗?我能在这里做什么
编辑
我在这里找到了半个答案:
如果我做到以下几点,这(部分)是有效的:
@import (less) "../font-awesome.css";
.icon-home {
.fa;
}
然而,我注意到,.fahome
并不存在。。。仅.fa主页:在之前。。。所以我试了一下:
@import (less) "../font-awesome.css";
.icon-home {
.fa;
.fa-home:before;
}
及
这两种方法都不管用。有什么想法吗?假设您使用的WE2012包含的内容少于1.4.2,最简单的解决方案是:
@import (less) "../font-awesome.css";
.icon-application-home {
&:extend(.fa, .fa-home all);
}
或:
阅读了解有关这些东西如何工作的详细信息
如果升级到包含较少1.6.x的IDE/编译器,则可以执行以下操作:
@import ".../font-awesome.less"
.icon-application-home {
.fa;
&:before {content: @fa-var-home}
}
在这里,您仍然不能将.fa home
或.fa home:before
用作mixin,因为第一个未定义,第二个不是有效的mixin选择器,幸运的是&:before{content:@fa var home}
正是.fa home
所做的。
但一般来说,基于extend
的解决方案更为优化,因为它可以生成更紧凑的CSS 假设您使用的WE2012包含的内容少于1.4.2,最简单的解决方案是:
@import (less) "../font-awesome.css";
.icon-application-home {
&:extend(.fa, .fa-home all);
}
或:
阅读了解有关这些东西如何工作的详细信息
如果升级到包含较少1.6.x的IDE/编译器,则可以执行以下操作:
@import ".../font-awesome.less"
.icon-application-home {
.fa;
&:before {content: @fa-var-home}
}
在这里,您仍然不能将.fa home
或.fa home:before
用作mixin,因为第一个未定义,第二个不是有效的mixin选择器,幸运的是&:before{content:@fa var home}
正是.fa home
所做的。
但一般来说,基于extend
的解决方案更为优化,因为它可以生成更紧凑的CSS 我得说马特,你的代码对我有用。。。也许是局部问题?@NicholasHazel:你用什么来编译LESS?我正在为VisualStudio试用WebEssentials 2012。@NicholasHazel:?!?!这是什么样的答案?这与我的问题有什么关系?我问你的是你用什么编译器来减少。。。Web essentials,SimpLESS还是什么?我很抱歉<代码>我不能帮你解决你的问题。
这样说会更好。删除先前的评论。我想说的是,不要使用visual studio
。我必须说Matt,你的代码适合我。。。也许是局部问题?@NicholasHazel:你用什么来编译LESS?我正在为VisualStudio试用WebEssentials 2012。@NicholasHazel:?!?!这是什么样的答案?这与我的问题有什么关系?我问你的是你用什么编译器来减少。。。Web essentials,SimpLESS还是什么?我很抱歉<代码>我不能帮你解决你的问题。
这样说会更好。删除先前的评论。我想说的是,不要使用visual studio。谢谢!顺便问一下,有没有什么方法可以用我的.less文件做同样的事情?其中,.fa
是一个变量(@{fa css prefix}
)?我已经用另一种方法更新了我的答案(前提是你需要更少的1.6.x)。谢谢!顺便问一下,有没有什么方法可以用我的.less文件做同样的事情?其中,.fa
是一个变量(@{fa css prefix}
)?我已经用另一种方法更新了我的答案(前提是你需要更少的1.6.x)。