https://codesandbox.io/s/material-demo-iw4gr
input: {
marginLeft: 8,
flex: 1,
"&::placeholder": {
// fontSize: '14 !important',
color: "red"
}
},
<InputBase
className={classes.input}
placeholder="Search Google Maps"
inputProps={{ "aria-label": "Search Google Maps" }}
/>
答案 0 :(得分:1)
应该使用className
属性代替classes
属性,以覆盖InputBase组件的默认样式。
我认为className
在这种情况下不起作用的原因是,className
仅针对包装器元素的样式,而classes
将允许您完全覆盖特定的InputBase
的元素,例如input
本身。您可以在here上的文档中进一步了解它。
<InputBase
classes={{
input: classes.input,
}}
placeholder="Search Google Maps"
/>
我已通过here为您复制了一个演示。
答案 1 :(得分:0)
/* try this */
/* Attention: There is a space between & and ::-webkit-input-placeholder */
input: {
marginLeft: 8,
flex: 1,
"& ::-webkit-input-placeholder": {
color: "red !important"
}
}
此外,像这样设置输入占位符
::-webkit-input-placeholder { /* WebKit browsers */
color: "red"
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
color: "red"
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
color: "red"
}
答案 2 :(得分:0)