【发布时间】:2015-11-04 23:37:32
【问题描述】:
是否可以有不同的 mixin 取决于宽度? 如何让它发挥作用?
例如
.fs (@weight: 300, @size: 2vw, @color: black) {
@size2: @size/10.2;
font-family: 'Lato', sans-serif;
font-weight: @weight;
font-size: unit(@size2,vw);
color: @color;
}
@media screen and (min-width: 1024px){
.fs (@weight: 300, @size: 10px, @color: black) {
font-family: 'Lato', sans-serif;
font-weight: @weight;
font-size: unit(@size,px)!important;
color: @color;
}
}
谢谢
【问题讨论】:
-
您在编写 mixin 方面似乎走在了正确的轨道上,但我不确定为什么您在媒体查询中覆盖 mixin,而您可以使用不同的 size 属性调用它。您也可以将单元作为参数本身的一部分传递,从而避免
unit()。 -
当您在
@media查询中规划您的Less 代码时,重要的是要意识到何时这些媒体查询实际被评估并生效。参见例如stackoverflow.com/a/14391323/2712740。所以是的,你可以对同名的 mixin 有不同的定义(你可以在 anywhere 有这些),但是你对它如何工作的期望很可能与它实际如何工作不同。在您指定您要解决的实际问题之前,很难更具体(而不是询问您认为解决问题的方法是否可行)。 -
即见XY-Problem。
-
我想让 px 或 vw 单位取决于窗口宽度。如果窗口宽度小于 1024px > 使用 px 单位...
标签: css less less-mixins