【发布时间】:2021-08-28 19:42:36
【问题描述】:
我最近在我的 Next.js 应用程序中升级了 Tailwind 版本,结果出现了一些问题。我注意到,对于具有type="text" 属性的输入字段,它们的边框现在变为不同的颜色——我从未指定过——当它们被关注时。在升级 Tailwind 之前,当文本输入字段悬停并聚焦时,边框颜色保持不变。有趣的是,这不会发生在我的任何其他不包含type="text" 属性的表单字段中。如果有人能解释为什么会发生这种情况以及我该如何解决这个问题,我将不胜感激。
以下是文本输入字段悬停时的图像: Text Input Field While Hovered On (Intended)
这是该文本输入字段的图像,当它被聚焦时: Text Input Field While Focused On (Unintended)
【问题讨论】:
-
您是从哪个版本升级的?当一个字段被聚焦时,有一个视觉表示通常是一种很好的做法,大多数现代浏览器甚至都有默认样式。要防止默认样式(无论是基于浏览器还是 Tailwind),请查看输入焦点时具有哪些 CSS 属性并将其设置为您喜欢的内容。
-
@j1mbl3s 我从 1.9 升级到 2.1.4 版本。我最终查看了 Chrome 中的 Styles 选项卡,发现 tailwind.css 文件中有一些与 type="input" 属性的项目相关联的类导致了意外的颜色变化,并且该文件位于 node_modules 文件夹中。如何在不更改文件本身的情况下禁用这些类?我可以在 tailwind.config.js 文件中做些什么吗?
-
如果不删除一些 Tailwind 层,我认为在 tailwind.config.js 中这是不可能的,但是您可以尝试在 CSS 中添加类似这样的内容:
*:focus { thePropertyApplyingTheBorder: 'theValueYouWant'; }或类似内容。 -
@j1mbl3s 嗯,很遗憾听到这个消息。澄清一下,
*:focus { thePropertyApplyingTheBorder: 'theValueYouWant'; }中冒号前的星号是什么?我注意到在 tailwind.css 文件中,星号* {}应用了我试图取消的样式。在 tailwind.css 中,我相信 * 表示框阴影。 -
*选择器是通配符选择器。本质上,*:focus选择带有:focus伪类的任何内容
标签: reactjs next.js tailwind-css tailwind-in-js