有没有办法使用其他 css 类 来组成 css 类?

Is there a way to compose css classes using other css classes?

我一直在看tailwindCSS,我在用的时候,感觉里面写着styleHTML。这让我觉得这是一个笨拙的库。但是当我看着它的时候我有了一个想法。

而不是像这样使用顺风

<div class="p-4 flex text-lg">Something</div>

我是否可以使用某些 CSS 预处理器来执行此操作:

// in html
<div class="some">Something</div>

// in css (with a preprocessor)
.some {
  include: .p-4;
  include: .flex;
  include: .text-lg;
}

这样我就不必在 HTML 中编写样式,但仍然可以获得 tailwind 实用程序的好处 类。

我知道 Scss 有 mixins,但据我所知,tailwind 只提供 类 而不是 mixins,而且我没有使用任何其他 CSS 预处理器的经验。那么有没有支持这个特性的预处理器呢?

使用 SCSS,@extend could do the job. However, it will only work if you have access to the classes you want to extend. As for Tailwind CSS, I think @apply 是做你想做的事的内置方式。