https://play.tailwindcss.com/2VVorQvG0T?file=css
自从升级到 Tailwind v4 后,配置就只有 CSS,我无法再将inherit
其用作值。它创建了类,但由于某种原因,变量的实际值似乎不起作用。
<script src="https://unpkg.com/@tailwindcss/browser@4"></script>
<style type="text/tailwindcss">
@theme {
--radius-inherit: inherit;
}
</style>
<div class="w-[100px] h-[100px] bg-blue-500 rounded-3xl m-20">
<div class="rounded-inherit bg-red-600">inherit</div>
</div>
这是 Tailwind 的一个错误还是我做错了什么?
实际上,如果你看一下生成的 CSS,它完美地创建了你要求的内容。问题是,即使你使用原生 CSS 复制它,它仍然不起作用:
如果我们从公式中省略变量,它就会起作用:
因此,我不会使用变量,而是在 TailwindCSS 中手动声明类:
这是一个错误吗?是的,至少这是一个缺点。我检查了这个
bg-inherit
类,Tailwind 完美地声明了该类而没有var()
变量,见此处:但是,
bg-inherit
是默认创建的类。我假设在中声明的所有变量都@theme
将出现在中var()
,因此inherit
无法在任何地方工作,因为它需要直接绑定到类,而不是来自单独的变量。也许您可以创建一个开发请求以包含rounded-inherit
在 Tailwind 中,类似于bg-inherit
。bg-inherit
而且由于 inherit 不能在 CSS 中通过变量传递 - 因为它旨在直接表达继承 - 我认为 Tailwind 在声明变量时没有发出警告也是一个错误
@theme
。