Less 减:为2个混合声明相同的属性

Less 减:为2个混合声明相同的属性,less,mixins,Less,Mixins,在纯CSS中,如果我想为两个选择器声明相同的属性,用逗号分隔这些选择器就足够了,例如: #first_id, .second_class { color:red; } 我怎样才能为少2个混合声明做同样的事情 我想做这样的事情: .generic_transition (@duration:1s), .other_transition (@duration:1s) { -webkit-transition:all @duration; -moz-transition:all

在纯CSS中,如果我想为两个选择器声明相同的属性,用逗号分隔这些选择器就足够了,例如:

#first_id,
.second_class
{
   color:red;
}
我怎样才能为少2个混合声明做同样的事情

我想做这样的事情:

.generic_transition (@duration:1s),
.other_transition (@duration:1s)
{
  -webkit-transition:all @duration;
     -moz-transition:all @duration;
      -ms-transition:all @duration;
       -o-transition:all @duration;
          transition:all @duration;
}
.other_transition (@duration:1s){
  .helper(@duration);
}

.generic_transition (@duration:1s){
  .helper(@duration); 
}

.helper(@duration){
  -webkit-transition:all @duration;
     -moz-transition:all @duration;
      -ms-transition:all @duration;
       -o-transition:all @duration;
          transition:all @duration;
}
但它没有运行。。。。如何达到预期的效果?
谢谢。

您可以为每个mixin添加助手类,如下所示:

.generic_transition (@duration:1s),
.other_transition (@duration:1s)
{
  -webkit-transition:all @duration;
     -moz-transition:all @duration;
      -ms-transition:all @duration;
       -o-transition:all @duration;
          transition:all @duration;
}
.other_transition (@duration:1s){
  .helper(@duration);
}

.generic_transition (@duration:1s){
  .helper(@duration); 
}

.helper(@duration){
  -webkit-transition:all @duration;
     -moz-transition:all @duration;
      -ms-transition:all @duration;
       -o-transition:all @duration;
          transition:all @duration;
}

与斯拉瓦人的答案相似,但代码略少。由于您的一个mixin名称已经是
.generic\u transition
,那么这就起作用了,而且很明显
。其他\u transition
使用了
generic
transition的代码:

.generic_transition (@duration:1s) {
  -webkit-transition:all @duration;
     -moz-transition:all @duration;
      -ms-transition:all @duration;
       -o-transition:all @duration;
          transition:all @duration;
}

.other_transition (@duration:1s) {
    .generic_transition (@duration);
}
然而,现在还不清楚,为什么你希望两个混音定义完全相同,就像你最初的问题一样。这对于选择器来说是有意义的,但对于混音器来说就没有那么多了。我假设您希望为转换设置一些“通用”代码,然后将其“通用”应用于任何“其他”转换


另外,虽然您的问题不一定涉及转换,因为这是您作为示例使用的,那么。

以这种方式。。。你建议用一种“临时”混合来解决我的问题,分两步。。。我说的对吗?是的,我认为最好只使用一个mixin:。通用的_转换(@duration:1s)或。其他的_转换(@duration:1s)