是否有与此SASS功能相对应的功能?

是否有与此SASS功能相对应的功能?,sass,less,Sass,Less,我正在处理一些东西,包括媒体查询和大量重复的代码,甚至是混音 我发现了一个包含以下SASS代码的网站: html{ @include responsive("font-size", 11px, ( 600px: 12px, 800px: 13px, 1180px: 14px, 1300px: 15px, 1750px: 16px, 1900px: 17px, 2100px: 18px,

我正在处理一些东西,包括媒体查询和大量重复的代码,甚至是混音

我发现了一个包含以下SASS代码的网站:

html{
  @include responsive("font-size", 11px,
    (
       600px: 12px,
       800px: 13px,
      1180px: 14px,
      1300px: 15px,
      1750px: 16px,
      1900px: 17px,
      2100px: 18px,
      2400px: 19px
    )
  );
}
不幸的是,没有进一步提到“responsive”,所以我对它了解不多,但我相信目标是使用规则创建媒体查询输出

我对规则集的了解不多,但是否可以像这里一样链接规则集


提前感谢。

这可能是您对Less的最佳选择。基本上,我们使用2D数组列表(带有媒体大小和属性值)作为mixin的参数。请参考内联注释以获得进一步解释

@阵列:600px 12px,700px 13px,800px 14px;/*具有介质大小和值的二维阵列*/
.responsive(@property;@defaultValue;@array){
@{property}:@defaultValue;/*默认设置*/
.loop媒体查询(@index>0){/*媒体查询循环时(@index)*/
@mediaSize:extract(extract(@array,@index),1);/*第一个数组val是媒体大小*/
@字体大小:extract(extract(@array,@index),2);/*第二个数组val是属性值*/
@mediaQuery:~“(最小宽度:@{mediaSize})”;/*构成媒体查询*/
@media@mediaQuery{/*输出设置*/
@{property}:@font-size;
}
.循环媒体查询(@index-1);
}
.循环媒体查询(长度(@array));
}
.产出{
.responsive(字体大小;11px;@array);
}
编译的CSS:

.output{
字体大小:11px;
}
@介质(最小宽度:800px){
.产出{
字体大小:14px;
}
}
@介质(最小宽度:700px){
.产出{
字体大小:13px;
}
}
@介质(最小宽度:600px){
.产出{
字体大小:12px;
}
}

这可能是您对Less的最佳选择。基本上,我们使用2D数组列表(带有媒体大小和属性值)作为mixin的参数。请参考内联注释以获得进一步解释

@阵列:600px 12px,700px 13px,800px 14px;/*具有介质大小和值的二维阵列*/
.responsive(@property;@defaultValue;@array){
@{property}:@defaultValue;/*默认设置*/
.loop媒体查询(@index>0){/*媒体查询循环时(@index)*/
@mediaSize:extract(extract(@array,@index),1);/*第一个数组val是媒体大小*/
@字体大小:extract(extract(@array,@index),2);/*第二个数组val是属性值*/
@mediaQuery:~“(最小宽度:@{mediaSize})”;/*构成媒体查询*/
@media@mediaQuery{/*输出设置*/
@{property}:@font-size;
}
.循环媒体查询(@index-1);
}
.循环媒体查询(长度(@array));
}
.产出{
.responsive(字体大小;11px;@array);
}
编译的CSS:

.output{
字体大小:11px;
}
@介质(最小宽度:800px){
.产出{
字体大小:14px;
}
}
@介质(最小宽度:700px){
.产出{
字体大小:13px;
}
}
@介质(最小宽度:600px){
.产出{
字体大小:12px;
}
}

这可能是您对Less的最佳选择。基本上,我们使用2D数组列表(带有媒体大小和属性值)作为mixin的参数。请参考内联注释以获得进一步解释

@阵列:600px 12px,700px 13px,800px 14px;/*具有介质大小和值的二维阵列*/
.responsive(@property;@defaultValue;@array){
@{property}:@defaultValue;/*默认设置*/
.loop媒体查询(@index>0){/*媒体查询循环时(@index)*/
@mediaSize:extract(extract(@array,@index),1);/*第一个数组val是媒体大小*/
@字体大小:extract(extract(@array,@index),2);/*第二个数组val是属性值*/
@mediaQuery:~“(最小宽度:@{mediaSize})”;/*构成媒体查询*/
@media@mediaQuery{/*输出设置*/
@{property}:@font-size;
}
.循环媒体查询(@index-1);
}
.循环媒体查询(长度(@array));
}
.产出{
.responsive(字体大小;11px;@array);
}
编译的CSS:

.output{
字体大小:11px;
}
@介质(最小宽度:800px){
.产出{
字体大小:14px;
}
}
@介质(最小宽度:700px){
.产出{
字体大小:13px;
}
}
@介质(最小宽度:600px){
.产出{
字体大小:12px;
}
}

这可能是您对Less的最佳选择。基本上,我们使用2D数组列表(带有媒体大小和属性值)作为mixin的参数。请参考内联注释以获得进一步解释

@阵列:600px 12px,700px 13px,800px 14px;/*具有介质大小和值的二维阵列*/
.responsive(@property;@defaultValue;@array){
@{property}:@defaultValue;/*默认设置*/
.loop媒体查询(@index>0){/*媒体查询循环时(@index)*/
@mediaSize:extract(extract(@array,@index),1);/*第一个数组val是媒体大小*/
@字体大小:extract(extract(@array,@index),2);/*第二个数组val是属性值*/
@mediaQuery:~“(最小宽度:@{mediaSize})”;/*构成媒体查询*/
@media@mediaQuery{/*输出设置*/
@{property}:@font-size;
}
.循环媒体查询(@index-1);
}
.循环媒体查询(长度(@array));
}
.产出{
.responsive(字体大小;11px;@array);
}
编译的CSS:

.output{
字体大小:11px;
}
@介质(最小宽度:800px){
.产出{
字体大小:14px;
}
}
@介质(最小宽度:700px){
.产出{
字体大小:13px;
}
}
@介质(最小宽度:600px){
.产出{
字体大小:12px;
}
}

您可以使用相对单位(%,em):如果您问我,这是一种非常低效的创建媒体查询的方法。当然,这对于一些规则来说是好的,但是对于整个网站来说,这段代码会变得非常臃肿,非常快。不确定这个mixin在SASS中做了什么,但它看起来像是一个循环会有所帮助。responsive()