You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

自定义Material UI类被默认样式覆盖,TextField聚焦标签改色不生效

这个问题是Material UI内置样式的CSS选择器权重高于自定义makeStyles生成的单类选择器导致的,可通过以下任意一种方法解决:

  • 方案1:快速强制覆盖,给样式添加!important标识符
const useStyles = makeStyles((theme) => ({
  inputLabelFocused: {
    color: "black !important",
  },
}));

其余TextField相关代码无需修改。

  • 方案2:提升自定义选择器权重(无需!important,符合CSS最佳实践)
    通过双&符号叠加类选择器,提高权重优先级超过MUI默认样式:
const useStyles = makeStyles((theme) => ({
  inputLabelFocused: {
    "&&": {
      color: "black",
    }
  },
}));
  • 方案3:直接在TextField上使用sx属性声明样式,MUI的sx属性优先级默认高于内置样式,无需额外配置InputLabelProps类名:
<TextField
  id="toDo"
  label="To Do"
  multiline
  rows={4}
  variant="filled"
  fullWidth
  sx={{
    "& .MuiInputLabel-root.Mui-focused": {
      color: "black"
    }
  }}
/>

内容的提问来源于stack exchange,提问作者Hyphen Frox

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 22:18:03