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

如何修改禁用状态下MUI TextField的文本颜色?

问题:MUI禁用状态TextField文本改为黑色(非选中状态)

解决方案

针对你使用的filled变体TextField,通过sx属性用更高特异性的选择器覆盖禁用状态的文本颜色即可,代码示例:

<TextField
  id="outlined-basic"
  value={'https://git.responsive.software/my-app.git'}
  fullWidth
  size="small"
  disabled
  variant="filled"
  sx={{
    '& .MuiFilledInput-input.Mui-disabled': {
      color: 'black'
    }
  }}
/>

无效原因说明

MUI的TextField不是简单封装原生input,它会生成多层嵌套DOM结构,且自带优先级更高的内置状态样式。你通过inputProps.style设置的颜色,优先级低于MUI为disabled状态预设的.Mui-disabled类样式规则,所以未选中时不生效;只有文本选中时,浏览器默认的选中样式优先级更高,才会显示你设置的黑色。

MUI基于CSS-in-JS实现组件样式,内置状态类的样式特异性高于普通内联样式,必须用更精准的选择器才能覆盖预设规则。

内容的提问来源于stack exchange,提问作者János

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 08:25:26