Nextjs + Tailwind 在无 class 或 className 属性的控件上如何应用 tailwind 的样式呢

252 天前
 devzhaoyou

如题,有些控件不能通过 class 或者 className, 如何应用 tailwind 的样式呢,如指定字体

2328 次点击
所在节点    程序员
11 条回复
ericguo
252 天前
二选一,要么不要用这样的控件(比如 AntD ),要么不要用 Tailwind 。
musi
252 天前
youtubbbbb
252 天前
可以用 useRef 通过操作 DOM 去加 class ,但是这种写法是不推荐的。
northquq
252 天前
@youtubbbbb 这种动态加的方法,不一定能被 tailwind 识别出来,导致编译后丢失 class 对应的样式吧
mooooooooooe
252 天前
二楼正解
epiloguess
252 天前
外面套个娃?
huijiewei
252 天前
1. @apply 到他原来的 classname 上,容易造成冲突
2. 套一层 div 用 * > 写,很麻烦。。

结论就是用不成就不强用了
Pencillll
252 天前
用 arbitrary variants 就行了,在控件外面的父元素写个 class ,比如:
[&_.xxx]:font-sans
[&>div>span]:font-sans
[&_*]:!font-sans

参考: https://tailwindcss.com/docs/hover-focus-and-other-states#using-arbitrary-variants
devzhaoyou
252 天前
感觉各位,验证一下各位的方案,感谢
lawted
251 天前
使用 shadcn 或者 headless ui
ericguo
249 天前

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1033279

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX