Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CSS3中计算操作数的较少转义中的空格保留_Css_Webkit_Less_Whitespace - Fatal编程技术网

CSS3中计算操作数的较少转义中的空格保留

CSS3中计算操作数的较少转义中的空格保留,css,webkit,less,whitespace,Css,Webkit,Less,Whitespace,我想用更少的语言表达以下CSS: .a { min-height: calc(2em + 4px); } 因此,为了防止LESS尝试计算,我使用LESS编写了表达式: 然而,LESS的缩小引擎正在删除空白,并发出: .a{min-height:calc(2em+4px);} 这是有问题的,因为webkit无法正确计算2em+4px,而2em+4px工作正常(为清晰起见添加了下划线)。这里真正的错误似乎在webkit中,因为我希望CSS3 calc的语法允许令牌之间不存在空格。您必须使

我想用更少的语言表达以下CSS:

.a {
    min-height: calc(2em + 4px);
}
因此,为了防止LESS尝试计算,我使用LESS编写了表达式:

然而,LESS的缩小引擎正在删除空白,并发出:

.a{min-height:calc(2em+4px);}
这是有问题的,因为webkit无法正确计算
2em+4px
,而
2em+4px
工作正常(为清晰起见添加了下划线)。这里真正的错误似乎在webkit中,因为我希望CSS3 calc的语法允许令牌之间不存在空格。

您必须使用“函数以不同的方式应用它:

第一个选项

.a {
    min-height:calc(~"2em + " 4px);
}
第二个选项: 仅将转义字符
~
的使用限制为
+
符号:

.a {
    min-height:calc(2em ~"+" 4px);
}
这两种方法都将产生以下已处理的CSS:


这是一篇老文章,但我想向您展示一个简单的
mathematic
解决方法

我的缩小引擎也有这个问题。Mine使用减法可以很好地工作,但还可以删除空白。如果有人有同样的问题,这是最简单的解决方法

如果你想要这个:

.a {
    min-height: ~'calc(2em + 4px)';
}
改为这样写:

.a {
    min-height: ~'calc(2em - -4px)';
}

我有一个解决办法,就是简单地使用最小高度:2.5em,这对我来说已经足够好了,但我仍然有兴趣知道LESS是否提供了这个启示。goto less2css.org并粘贴到。a{min height:~'calc(2em+4px);}-输出没有缩小-即它看起来像是2em_+_4px@Danield,谢谢,不过就我而言,我想缩小输出,只是不是一定范围的文本。。。本质上,我想要一个特定缩小的解决方案。我可能会结束这个问题,因为这个问题显然在webkit中,而不是更少。不知道它是否能解决您的问题,但是。如果你还没有,你可以尝试一下。仅供参考-,确实需要在“+”和“-”运算符周围加上空格,所以这不是webkit错误。好吧,威尔的问题不在于代码太少,而在于一个确实产生了无效CSS的缩小器(因为规范需要空格)。谢谢!你救了我们一天!这是旧YUI压缩机版本(2014年之前)中的一个缺陷。你需要在那里写双负号而不是加号。更多信息:
.a {
    min-height: ~'calc(2em + 4px)';
}
.a {
    min-height: ~'calc(2em - -4px)';
}