Css LESS contrast()函数
正如您可能知道的,LESS提供了许多面向颜色的操作(例如:Css LESS contrast()函数,css,webkit,less,mozilla,Css,Webkit,Less,Mozilla,正如您可能知道的,LESS提供了许多面向颜色的操作(例如:darken()、light()和mix()),它们都非常有效。 不幸的是,我无法使用理论上最酷的功能之一:自动设置颜色与您提供的颜色形成对比的功能。 从官方规范: contrast(@color1, [@darkcolor: black], [@lightcolor: white], [@threshold: 43%]); 所以,我的LESS基本上是提供了一个背景变量,可以变化很多(我在基于主题的网站上工作),它的文本颜色应该适应
darken()
、light()
和mix()
),它们都非常有效。
不幸的是,我无法使用理论上最酷的功能之一:自动设置颜色与您提供的颜色形成对比的功能。
从官方规范:
contrast(@color1, [@darkcolor: black], [@lightcolor: white], [@threshold: 43%]);
所以,我的LESS基本上是提供了一个背景变量,可以变化很多(我在基于主题的网站上工作),它的文本颜色应该适应
&.popup{
.body{
background-color: @popupBg;
color: contrast(@popupBg, [@darkcolor: black], [@lightcolor: white], [@threshold: 43%]);
}
}
在控制台中检查输出代码时,我可以看到函数没有正确解析(Chrome通知错误,Firefox只是隐藏它)。我还尝试了简化版,只是color:contrast(@popupg)代码>并且没有运气
以前有人用过这个吗?我已经使用较少的参数很多了,这是我第一次遇到问题。方括号表示可选参数,不应该出现在代码中。查看LESS函数参考及其,它有一个关于如何正确使用对比度的示例:
Example:
contrast(#aaaaaa)
contrast(#222222, #101010)
contrast(#222222, #101010, #dddddd)
Output:
#000000 // black
#ffffff // white
#dddddd
因此,您的代码应该是:
color: contrast(@popupBg, black, white, 43%);
另一方面,您确定定义了@popubg
查看演示。方括号表示可选参数,不应出现在代码中。查看LESS函数参考及其,它有一个关于如何正确使用对比度的示例:
Example:
contrast(#aaaaaa)
contrast(#222222, #101010)
contrast(#222222, #101010, #dddddd)
Output:
#000000 // black
#ffffff // white
#dddddd
因此,您的代码应该是:
color: contrast(@popupBg, black, white, 43%);
另一方面,您确定定义了@popubg
请查看演示。您可以像这样使用:
contrast(@popupBg, lighten(black, 12%), darken(white, 12%));
您可以像这样使用:
contrast(@popupBg, lighten(black, 12%), darken(white, 12%));
我试过了,但在控制台中,我得到了整个表达式作为输出。该变量被正确定义为背景实际上被浏览器正确读取:\n我看到它实际上在工作…这完全令人费解。也许是我的PHP编译器造成的?不管怎样,我很高兴知道这个错误并没有减少。谢谢我试过了,但在控制台中,我得到了整个表达式作为输出。该变量被正确定义为背景实际上被浏览器正确读取:\n我看到它实际上在工作…这完全令人费解。也许是我的PHP编译器造成的?不管怎样,我很高兴知道这个错误并没有减少。谢谢只是一个简短的注释:[]是可选参数的注释只是一个简短的注释:[]是可选参数的注释