我需要有一个动态的主题,我的网站,从一个数据库,可能的值是theme-1
,theme-2
等,我希望每一个改变网站的调色板,即primary
顺风颜色为theme-1
,但blue
为theme-2
的green
。
我试过使用https://github.com/upupming/tailwindcss-themeable,但它是一个矫枉过正,因为它重新生成所有的颜色,并有一个非常麻烦和长前缀前的每一个类。
.theme-2 {
/* primary-500 is now color: blue */
}
由于依赖性限制,我使用Tailwind v2。
2条答案
按热度按时间t9aqgxwy1#
解决方案:使用CSS变量。
main.css
tailwind.config.js
现在,您可以使用text-primary-500,并且只使用1个父类更改颜色
kulphzqa2#
你可以使用tw-colors。这是一个很瘦的插件,可以很容易地配置多个颜色主题。
顺风配置js
在class中使用这样的主题:
或者使用数据属性:
主题可以动态切换一些切换按钮或任何你喜欢的