reactjs - 在从 Material-UI 中选择组件(React)中更改焦点状态的边框颜色
问题描述
我正在尝试Select
从 Material-UI 库中更改焦点组件的样式。澄清on focus
一下,不是输入的正常边框,而是单击下拉列表的元素后(焦点状态)
这是我取得的成就:
https://codesandbox.io/s/ancient-cookies-4femm
我设法改变了on focus
状态输入的背景。我无法为边框设置样式。到目前为止我所拥有的:
我用一个包装了我的组件ThemeProvider
:
<ThemeProvider theme={theme1}>
My component
</ThemeProvider>
在哪里theme1
:
const theme1 = createMuiTheme({
overrides: {
MuiSelect: {
select: {
"&:focus": {
backgroundColor: '#ffddec',
color: 'brown'
},
'&:before': {
borderColor: 'orange'
},
'&:after': {
borderColor: 'green',
}
}
}
}
});
我的 Select 组件如下所示:
<Select
labelId="demo-simple-select-outlined-label"
id="demo-simple-select-outlined"
value={value}
onChange={handleChange}
labelWidth={labelWidth}
>
Select
当我单击下拉列表时, div上唯一更改的类是Mui-focused
. 我试图为这门课设置样式,但没有奏效。
BackgroundColor
onon focus
正在工作,但不是该borderColor
属性。任何想法为什么?
我找到了我想要的 Input 元素的行为,这里是类(见附图)它是绿色边框,它被应用在焦点上
解决方案
在焦点事件中用边框颜色替换颜色。
const theme1 = createMuiTheme({
overrides: {
MuiSelect: {
select: {
"&:focus": {
backgroundColor: '#ffddec',
borderColor: 'brown'
},
'&:before': {
borderColor: 'orange'
},
'&:after': {
borderColor: 'green',
}
}
}
}
});
推荐阅读
- reactjs - 在 vscode 中调试 React JSX
- java - 这种情况如何与 ArrayList 一起使用?
- javascript - 使坐标被某些其他坐标吸引/排斥
- c# - 为 API 请求禁用 StatusCodePages 中间件
- nhibernate - nHibernate 4.1.4 没有引用与保留关键字匹配的表名
- c# - 在 C# 中导出到 xml 之前检查数据的正确性
- php - 如何使用 .htaccess 重写 URL?
- r - 使用动态缓冲区在空间点网格上迭代以找到 R 中的交点
- php - PHP 从 URL 获取 ID .$_GET['id'];
- python - 无法使用 imshow 将多个单个图像应用于大网格