我正在尝试在深色背景上使用 Material UI Select 组件:
但我无法将下拉图标和下划线边框的颜色更改为白色。我已经研究过使用类覆盖样式,并且可以使用以下内容更改颜色:
const styles = theme => {
root: {
borderBottom: '1px solid white',
},
icon: {
fill: 'white',
},
}
class MyComponent extends React.Component {
render() {
const {classes} = this.props;
return (
<Select
value={this.props.value}
inputProps={{
classes: {
root: classes.border,
icon: classes.icon,
},
}}
>
<MenuItem
value={this.props.value}
>
Foo
</MenuItem>
</Select>
)
}
}
但是,当 Select 组件处于焦点时,我似乎无法设置下划线的颜色,即使用上面的代码,我得到白色的下划线和图标,但是当焦点位于组件上时,下划线保持黑色。
原文由 simen-andresen 发布,翻译遵循 CC BY-SA 4.0 许可协议
在 Jan-Philipp 的 帮助下,我把所有东西都涂成白色,同时组件保持焦点:
获得正确的对比度不是一个非常漂亮的解决方案,但它可以完成工作。
编辑 上面的答案缺少一些代码,也缺少悬停颜色,正如@Sara Cheatham 所建议的那样。查看更新的基于钩子的解决方案: