Less 减去:当前颜色上的变暗()

Less 减去:当前颜色上的变暗(),less,Less,我想对当前颜色调用LESS的darken()函数(我在任何变量中都没有当前颜色)。可能吗?根据七个阶段的最大要求;在您的节点后端,让我们说express var less = require('less'); //also the body parser, express, etc 从页面中,您可以使用页面的实际颜色发出异步请求,只需使用js抓取页面并发出请求即可。然后,直截了当地说: app.post('/whateveryourroute', function(req, res) {

我想对当前颜色调用LESS的
darken()
函数(我在任何变量中都没有当前颜色)。可能吗?

根据七个阶段的最大要求;在您的节点后端,让我们说express

var less = require('less'); //also the body parser, express, etc

从页面中,您可以使用页面的实际颜色发出异步请求,只需使用js抓取页面并发出请求即可。然后,直截了当地说:

app.post('/whateveryourroute', function(req, res) {
    var colorFromReq = req.body.color;
    less.render('.class { color: darken(`colorFromReq`, 20%) }', function (e, css) {
      res.header("Content-type", "text/css");
      res.send(css);
    });
});

类似的事情可能是,我没有测试它,但它是可能的。

简言之,不,它不是。因为Less也不知道当前颜色是什么。以防万一,“当前颜色”(假设任意“当前”包括DOM继承的颜色)有一些技巧,至少在
背景
颜色:;但一般来说,建议使用变量。多多少少想一想,因为预处理器永远不可能支持这一点,不是吗?如果在服务器上根据请求少运行一些,这是可能的。您可以在中运行jsless@SantiagoRebella,我想看看你是怎么想的(正如Borek猜测的那样,事实上,仅仅设计CSS预处理器是不可能的。假设我们将“当前颜色”定义为依赖于HTML DOM结构或类似的东西)。我明白了。虽然我看不出这比直接通过脚本设置相应的值更好,而不涉及服务器或更少的内容。这就是为什么我仍然会用“不可能”来表示这种情况,因为不是所有“理论上可能”的东西在实践中都有意义。(在这个特殊的例子中,这个技巧破坏了CSS预处理器的概念)。无论哪种方式,谢谢你的回答:)服务器都会参与进来,因为这样你根本不需要知道颜色值,只需要从元素中获取颜色值,发送post请求并接收颜色变暗的颜色。我认为这是你不必知道价值的唯一方法。不客气;)>我想这是你能做的唯一方法-是吗。这就是问题所在,如果你可以用脚本来操纵你的样式,就没有理由使用服务器或更少的程序。@最多七个阶段,但我想问题是我想调用更少的darken()函数,我不知道如果不使用更少的程序,你会怎么做,在你的示例中,你完全按照我说的做,但如果不使用问题中要求的唯一工具,事实上你说这是不可能的