2015-02-09 81 views
1

CSS3中新增了一个名为currentColor的关键字,正如名称所暗示的,它指的是元素的当前颜色值。如何在LESS中使用“currentColor”CSS 3关键字?

现在我想在LESS'darken(@color,@percentage)-function中使用这个关键字。下面抛出LESS编译错误:

h1 { 
    color: red; 
    background-color: darken(currentColor, 75%); 
} 

的errormessage的:

undefined_methodError: error evaluating function `darken`: 
Object [object Object] has no method 'toHSL' 

请忽略,这是尚未在所有的浏览器都支持的事实。任何人都知道如何在LESS中完成这项工作?

+2

不是你的问题的确切答案,但如果我对你正在尝试做的解释是正确的,那么[这个答案](http://stackoverflow.com/questions/24878924/how-to-override-a-less -mixin-variable-based-a-parents-variable/24880702#24880702)可以帮助你。 – Harry 2015-02-09 16:18:23

回答

7

这样做根本不可能。

LESS编译为常规CSS。
任何不能用CSS表示的行为也不能用LESS表示。

特别是,LESS darken()函数通过在编译时更改颜色来工作。
由于currentColor直到运行时才知道,所以不能这样做。

+0

所以这是一个愚蠢的问题,我猜。谢谢你让我知道! – connexo 2015-02-09 15:44:07