我正试图(我认为)在LESS中做一个非常简单的混音,而且我不确定这里出了什么问题。
我正在使用Visual Studio Web Essentials进行编译。
所以这是我的目标: 我想要一个类似于boostrap控件标签的样式,除了我想要改变一些属性(让我们说填充):
这是我的LESS:
@import (reference) 'bootstrap/bootstrap.less';
.my-test-class {
.control-label;
padding: 4;
}
这会导致编译错误: NameError:.control-label未定义。
我在这里做错了什么?
答案 0 :(得分:5)
据我所知,所有.control-label
类定义都驻留在其他类定义in this file中。具体而言,在.form-inline
和.form-horizontal
内。但是在.form-inline
范围内,它也位于媒体查询中,目前它无法作为mixin进行访问。
这意味着您必须通过唯一可用的命名空间访问它,如下所示:
@import (reference) 'bootstrap/bootstrap.less';
.my-test-class {
.form-horizontal > .control-label;
padding: 4;
}
从中学习的一般原则是真正需要了解引导代码实际输出的内容,以便能够访问(或知道您是否可以甚至访问)它的一部分mixin(无论是否将(reference)
导入)。