更少的CSS计算

更少的CSS计算,css,less,Css,Less,这是我想做的。不确定是否可以,但我感觉我就是找不到语法 @height : 50px; @wrap : 25px; @bgsize : ((@wrap/@height)*100)+'%'; 因此,@bgsize==50%,我所尝试的一切都会导致脚本失败。好的,表达式结果将始终使用与其操作数相同的单位;在末尾加上百分号最多只能产生类似“50px%”的结果,或者完全失败 也就是说,您可以执行以下操作(这不是很优雅,但很有效): 如果在实际属性定义中也指定了单位,则始终可以避免最后两行和“-in

这是我想做的。不确定是否可以,但我感觉我就是找不到语法

@height : 50px;
@wrap   : 25px;
@bgsize : ((@wrap/@height)*100)+'%';

因此,
@bgsize==50%
,我所尝试的一切都会导致脚本失败。

好的,表达式结果将始终使用与其操作数相同的单位;在末尾加上百分号最多只能产生类似“50px%”的结果,或者完全失败

也就是说,您可以执行以下操作(这不是很优雅,但很有效):


如果在实际属性定义中也指定了单位,则始终可以避免最后两行和“-in pixels”间接寻址。

实际上,更优雅的方法是使用内置于LESS中的
percentage()
函数

@height : 50px;
@wrap   : 25px;
@bgsize : percentage(@wrap/@height);
// @bgsize == 50%

也许这是在更新版本的LESS中添加的。

谁否决了我。想详细说明一下吗?谢谢!这就回答了我的问题。我真的很喜欢这种方法,将来也会使用它,但我将把绿色支票留在原来的地方,因为ChssPly76确实向我解释了我的方法失败的原因,而且更及时。你的方法真的很酷,谢谢!是的,这是对上述答案的补充。我没有解释原因,只是因为ChssPly76已经有了。我不在乎分数或其他什么,但更新的答案不应该出现在顶部吗?您可以随意编辑我的来添加解释,也可以编辑ChssPly76来使用最新的技术。两种方式我都不介意。
@height : 50px;
@wrap   : 25px;
@bgsize : percentage(@wrap/@height);
// @bgsize == 50%