Less/Meteor是否将媒体查询视为变量?
我第一次和Less和Meteor一起工作。一切都很酷,只是我在尝试让媒体查询正常工作时遇到了困难 我有一系列的媒体查询,结构如下:Less/Meteor是否将媒体查询视为变量?,meteor,less,media-queries,Meteor,Less,Media Queries,我第一次和Less和Meteor一起工作。一切都很酷,只是我在尝试让媒体查询正常工作时遇到了困难 我有一系列的媒体查询,结构如下: /* Desktops and laptops ----------- */ @media only screen and (min-width : 1224px) { @columns: 12; .full() { width: 100%; } .container(){ .center(12); } .main-co
/* Desktops and laptops ----------- */
@media only screen and (min-width : 1224px) {
@columns: 12;
.full() {
width: 100%;
}
.container(){
.center(12);
}
.main-col() {
.column(9);
.push(0);
}
.side-col(){
.column(3);
float:right;
}
.nested-left-col(){
.nested-left(6)
}
.nested-right-col(){
.nested-right(3);
}
}
但是当css被编译时,我得到的是:
/* Desktops and laptops ----------- */
奇怪的是,只包含注释的媒体查询按预期编译:
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
/* Styles */
}
我很确定这些媒体查询被视为永远不会被调用的变量
我只是做错了吗?有没有什么明显的东西我遗漏了?我已经寻找了半个小时的答案,但找不到有同样问题的人。这表明我忽略了显而易见的事情,但也许我遇到了一些不寻常的事情。明白了
我最初以不同的方式处理这些mixin,并将它们参数化,因此它们具有()。在我改变了方法之后,我没有费心删除()s,因为只要我在CSS中直接调用它们进行布局测试,不向它们传递任何值就可以了。但是当我把它们移动到媒体查询中时,它们不再被调用,而我得到了空白输出。
删除()使其不再作为参数进行计算,并修复了它
我仍然没有从@columns变量得到任何输出,但是我试图在那里重新声明一个全局值。我有点期待这无论如何都不会奏效,所以我会找到一种不同的方法
谢谢。非常感谢。您的代码不包含任何内容,除非被调用,否则不会执行任何操作。因此,应该是空输出。当我在查询之外调用了这些代码,但当我将它们放入查询时,它们没有被调用?请参阅。每个
@media
块都有自己的作用域,因此在@media
块中定义的混合仅在该块中可见。(即,@media
块外部的mixin调用不会调用其中定义的mixin)。也许一个稍微扩展一点的例子会对你有所帮助。