You need to enable JavaScript to run this app. 如何修改material-ui/lab/Autocomplete组件的下拉选项背景颜色
优惠活动
大模型
产品
解决方案
定价
更多

如何修改material-ui/lab/Autocomplete组件的下拉选项背景颜色

解决方案

你需要同时覆盖 Autocomplete 下拉面板容器和单个选项的样式,按你当前使用 classes 注入样式的写法,修改步骤如下:

  1. 在你的样式文件中新增两类样式:
/* 对应单个下拉选项样式 */
.option {
  background-color: #ffffff !important;
  /* 同步修改文字颜色,避免白底白字无法识别 */
  color: #000000;
}
/* 对应整个下拉弹窗容器样式 */
.paper {
  background-color: #ffffff !important;
}
  1. 修改 Autocomplete 组件的 classes 配置,注入新增的paper样式:
<Autocomplete
  id="combo-box-demo"
  options={mitarbeiter}
  classes={{
    option: styles.option,
    // 新增下拉面板样式注入
    paper: styles.paper
  }}
  onChange={changer}
  getOptionLabel={(option) => option.email}
  fullWidth
  style={{width: 350}}
  renderInput={(params) => <TextField {...params} label="Mitarbeiter" variant="outlined" style={{ backgroundColor: "cyan !important" }}/>}
  required
/>

如果你不想单独维护样式文件,也可以直接用MUI自带的sx属性实现:

<Autocomplete
  id="combo-box-demo"
  options={mitarbeiter}
  sx={{
    // 修改单个选项样式
    '& .MuiAutocomplete-option': {
      backgroundColor: '#fff',
      color: '#000'
    },
    // 修改下拉面板样式
    '& .MuiAutocomplete-paper': {
      backgroundColor: '#fff'
    }
  }}
  onChange={changer}
  getOptionLabel={(option) => option.email}
  fullWidth
  style={{width: 350}}
  renderInput={(params) => <TextField {...params} label="Mitarbeiter" variant="outlined" style={{ backgroundColor: "cyan !important" }}/>}
  required
/>

注意事项

如果样式未生效,优先检查是否是全局深色主题配置覆盖了自定义样式,加!important可以强制提升样式优先级生效。

内容的提问来源于stack exchange,提问作者LEON

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.21 10:27:05