React中Antd的Select组件下拉样式如何修改

下面这种效果会覆盖全局的css,最终解决看结尾(11.22更新)

效果

 官网传送门

选择器 Select - Ant Design (antgroup.com)

自定义样式

.ant-select-dropdown {
  box-sizing: border-box;
  color: #ffffff; /* 下拉菜单字体颜色 */
  background-color: #07233a !important; /* 下拉菜单背景色 */
  border: 1px solid #379be8;
  border-radius: 0 !important ;
  border-radius: 0px 0px 0px 0px;
  box-shadow: inset 0px 0px 8px 2px rgba(12, 123, 164, 0.3);
  .ant-select-item-option {
    width: 100%;
    margin-left: 10%;
    color: #ffffff; /* 下拉项字体颜色 */
    border-bottom: 1px solid #379be8;
    border-radius: 0px 0px 0px 0px;
    box-shadow: inset 0px 0px 8px 2px rgba(12, 123, 164, 0.3);
    &:hover {
      background-color: rgba(255, 255, 255, 0.2); /* 鼠标悬停时的背景色 */
    }
    &.ant-select-item-option-selected {
      background-color: rgba(255, 255, 255, 0.3); /* 选中项的背景色 */
    }
  }
  .ant-select-item-option:nth-last-child(1) {
    border: none !important;
  }
}

2024.11.22更新,只影响单个,不影响其他页面Select样式

产生原因: 通过检查元素发现该Option下拉框是和root同级的,此刻定义Css是没有用的,官网给出了解决方法

解决方法

加上popupClassName,后面的为自己定义的css名字,后续的代码正常书写,检查元素,你会发现和body同级的css,居然有你设置的这个属性,这样就可以做到单个修改

  .popupClassName_select {
    box-sizing: border-box;
    color: #ffffff; /* 下拉菜单字体颜色 */
    background-color: #07233a !important; /* 下拉菜单背景色 */
    border: 1px solid #379be8;
    border-radius: 0 !important ;
    border-radius: 0px 0px 0px 0px;
    box-shadow: inset 0px 0px 8px 2px rgba(12, 123, 164, 0.3);
    .ant-select-item-option {
      width: 100%;
      margin-left: 10%;
      color: #ffffff; /* 下拉项字体颜色 */
      border-bottom: 1px solid #379be8;
      border-radius: 0px 0px 0px 0px;
      box-shadow: inset 0px 0px 8px 2px rgba(12, 123, 164, 0.3);
      &:hover {
        background-color: rgba(255, 255, 255, 0.2); /* 鼠标悬停时的背景色 */
      }
      &.ant-select-item-option-selected {
        background-color: rgba(255, 255, 255, 0.3); /* 选中项的背景色 */
      }
    }
    .ant-select-item-option:nth-last-child(1) {
      border: none !important;
    }
  }

官网说法

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苦逼的猿宝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值