Css 使用防护罩时,清除混入,减少不工作

Css 使用防护罩时,清除混入,减少不工作,css,less,Css,Less,我正在尝试为clear创建一个简单的少混音,因此我有: .clear { &:after { content: ""; display: table; clear: both; } // :after } .clear(@float) when (@float = "left", @float = "right") { clear: @float; } 基本上,我想在使用“.clear”或“.clear(两者)”时同时清除这两个选项,在使用.c

我正在尝试为clear创建一个简单的少混音,因此我有:

.clear {

  &:after {
    content: "";
    display: table;
    clear: both;
  } // :after

}

.clear(@float) when (@float = "left", @float = "right") {
  clear: @float;
}
基本上,我想在使用“.clear”或“.clear(两者)”时同时清除这两个选项,在使用.clear(“左”)或“.clear”(“右”)时清除第二个选项

我该怎么做

谢谢,, 米格尔

#1最简单的方法是使用mixin guard:

.clear(…)when(default()){
&:之后{
内容:“;
显示:表格;
明确:两者皆有;
}
}
.清除(@float=左),(@float=右)时的(@float){
清除:@浮动;
}
#2或:

.clear(…)when(default()){
&:之后{
内容:“;
显示:表格;
明确:两者皆有;
}
}
.clear(左){clear:left}
.clear(右){clear:右}
#3或在这种情况下更干净/优化(以及与旧版本不兼容的版本),适用于所有变体:

.clear(){
&:之后{
内容:“;
显示:表格;
明确:两者皆有;
}
}
.clear(两者){.clear()}
.clear(左){clear:left}
.clear(右){clear:右}
--- …当我使用
.clear(“left”)
。.clear(“right”)
时,第二个选项

不要在此处使用引号,正确的用法是:

.clear;
.clear();
.清除(两个);
。清除(左);
.清楚(右);