对数值变量求反并加上';px和x27;用LessCSS来描述它

对数值变量求反并加上';px和x27;用LessCSS来描述它,less,Less,我想创建一个函数,它执行以下操作: .sprite大小(@width、@height、@x、@y){ 宽度:~'@{width}px'; 高度:~'@{height}px'; 背景:@sprites no repeat-~'{x}px'-~'{y}px'; } 我想在@x和@y中传递一个正值,然后在输出中求反。对于给定示例,上述LESS函数输出以下内容: //更少 .标题语言选择{ .雪碧大小(44,21312,0); } //输出CSS .标题语言选择{ 宽度:44px; 高度:21px;

我想创建一个函数,它执行以下操作:

.sprite大小(@width、@height、@x、@y){
宽度:~'@{width}px';
高度:~'@{height}px';
背景:@sprites no repeat-~'{x}px'-~'{y}px';
}
我想在
@x
@y
中传递一个正值,然后在输出中求反。对于给定示例,上述LESS函数输出以下内容:

//更少
.标题语言选择{
.雪碧大小(44,21312,0);
}
//输出CSS
.标题语言选择{
宽度:44px;
高度:21px;
背景:url('/Content/images/sprites.png')不重复-312px-0px;
}
如您所见,输出结果包括
-
px
之间的空格。有没有什么方法可以消除这个问题,实现我想要的


我希望该行的输出是:
background:url('/Content/images/sprites.png')no repeat-312px-0px

只需在符号和所需单位中乘以
1
。因此:

.sprite大小(@width、@height、@x、@y){
宽度:@width*1px;
t:@高度*1px;
背景:@sprites no repeat@x*-1px@y*-1px;
}
您也可以尝试以下方法:

.sprite大小(@width、@height、@x、@y){
宽度:~“@{width}px”;
高度:~“@{height}px”;
背景:@sprites不重复@x*(-1px)@y*(-1px);
}