Material-ui - TextField - 无法更改助手文本错误颜色
Material-ui - TextField - Can't change helper text error color
我有一个 form
背景颜色很尴尬。想要在 Outlined TextField
处于错误状态但似乎无法覆盖它时更改帮助文本的颜色。它坚持红色。
参见 CodeSandBox。
由于某种原因,在以下类名下生成了错误文本颜色:.MuiFormHelperText-root.Mui-error
所以仅仅覆盖错误规则是不够的。
这将达到目的:
const helperTextStyles = makeStyles(theme => ({
root: {
margin: 4,
color:'black',
},
error: {
"&.MuiFormHelperText-root.Mui-error" :{
color: theme.palette.common.white,
},
},
}));
问题是由 CSS 特殊性引起的(基本样式具有比覆盖样式 class 更具体的 class 名称,即 MuiFormHelperText-root.Mui-error
)。在这种情况下使用&$
语法是recommended:
const helperTextStyles = makeStyles(theme => ({
root: {
margin: 4,
'&$error': {
color: 'white'
}
},
error: {} //<--this is required to make it work
}));
您还可以参考 this section 的示例和更多解释。
我有一个 form
背景颜色很尴尬。想要在 Outlined TextField
处于错误状态但似乎无法覆盖它时更改帮助文本的颜色。它坚持红色。
参见 CodeSandBox。
由于某种原因,在以下类名下生成了错误文本颜色:.MuiFormHelperText-root.Mui-error
所以仅仅覆盖错误规则是不够的。
这将达到目的:
const helperTextStyles = makeStyles(theme => ({
root: {
margin: 4,
color:'black',
},
error: {
"&.MuiFormHelperText-root.Mui-error" :{
color: theme.palette.common.white,
},
},
}));
问题是由 CSS 特殊性引起的(基本样式具有比覆盖样式 class 更具体的 class 名称,即 MuiFormHelperText-root.Mui-error
)。在这种情况下使用&$
语法是recommended:
const helperTextStyles = makeStyles(theme => ({
root: {
margin: 4,
'&$error': {
color: 'white'
}
},
error: {} //<--this is required to make it work
}));
您还可以参考 this section 的示例和更多解释。