如何将CSS文件中的颜色参数化为Sass变量?

问题描述

背景

我买了一个不幸的主题,它没有内置无礼,并且颜色已经硬编码到CSS文件中。

问题

我想基于此文件制作一个scss文件,然后对其中的颜色进行参数化,以便可以轻松地尝试使用不同的调色板。

可能的解决方

我考虑过像下面这样进行正则表达式并创建颜色字典,然后用$color1,$color2,...之类的变量替换颜色。

(background-color|background|border-color|border|color)\s*[:]\s*[^#]*(#[abcdef0-9]{3,6})

还有其他想法吗?

但是我认为可能为此目的构建了脚本。另外,在这里我可能会有更好的主意,因此我发布了这个问题。

解决方法

我不想听起来很明显,但是您不能用变量名称替换所有出现的颜色吗(IDE具有查找和替换工具,比regexp更实用),然后将变量设置为刚替换的十六进制吗?

一旦完成所有颜色的设置(单个调色板可以有几.. 3?4?),您就可以更改变量中的4个值并尝试使用不同的调色板。