Material-UI:更改 TextField 中的自动填充背景颜色

2024-04-09

目前,我有一个样式化的文本字段。当我开始在电子邮件字段中输入时,会出现自动填充选项。如果我选择自动填充选项之一,文本字段的背景将变为白色并带有黑色文本。我想改变这些风格。

我试过这个:

import { withStyles } from "@material-ui/core/styles";
import TextField from "@material-ui/core/TextField";
import React from "react";

const styles = {
  underline: {
    "&::before": {
      borderBottom: "1px solid #90caf9"
    },
    "&:hover:not(.Mui-disabled):before": {
      borderBottom: "2px solid #90caf9"
    },
    "&::after": {
      borderBottom: "2px solid #90caf9"
    }
  },
  input: {
    "&:-webkit-autofill": {
      WebkitBoxShadow: "0 0 0 1000px black inset"
    }
  }
};

const DarkTextField = withStyles(styles)(props => {
  const { classes, ...other } = props;

  return <TextField InputProps={{ className: classes.underline }} {...other} />;
});

export default DarkTextField;

根据评论将 DarkTextField 组件更改为以下内容:

import { withStyles } from "@material-ui/core/styles";
import TextField from "@material-ui/core/TextField";
import classNames from "classnames";
import React from "react";

const styles = {
  underline: {
    "&::before": {
      borderBottom: "1px solid #90caf9"
    },
    "&:hover:not(.Mui-disabled):before": {
      borderBottom: "2px solid #90caf9"
    },
    "&::after": {
      borderBottom: "2px solid #90caf9"
    }
  },
  input: {
    "&:-webkit-autofill": {
      WebkitBoxShadow: "0 0 0 1000px black inset"
    }
  }

};

const DarkTextField = withStyles(styles)(props => {
  const { classes, ...other } = props;

  return <TextField InputProps={ classNames("classes.underline", "classes.input") } {...other} />;
});

export default DarkTextField;

以上没有做任何改变。

  1. 上述方法是否正确(除了 InputProps 中缺少的 className 之外)?
  2. 如何在 InputProps 中使用多个 className?

For the DarkTextField语法有几个选项:

第一个语法将通过单独的键传递所有类(underline and input) 的classes的支柱Input https://material-ui.com/api/input/#css.

const DarkTextField = withStyles(styles)(props => {
  const { classes } = props;
  return <TextField InputProps={ {classes: classes}} />;
});

第二种语法将组合类名(classNames提供了一种简单的方法来获取以空格分隔的类名的完整字符串)以在根级别使用Input通过className prop.

const DarkTextField = withStyles(styles)(props => {
  const { classes } = props;
  return <TextField InputProps={ {className: classNames(classes.underline, classes.input)}} />;
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Material-UI:更改 TextField 中的自动填充背景颜色 的相关文章

随机推荐

  • 获取 PHP 中动态选择的类常量的值

    我希望能够做这样的事情 class ThingIDs const Something 1 const AnotherThing 2 thing Something id ThingIDs thing 这是行不通的 有没有一种简单的方法可以做
  • 调试 Windows 消息内容和目标的好方法是什么?

    我正在开发一个基于其他行为模拟 Windows 鼠标的应用程序 一个示例是按键盘上的 或 键将 WM MOUSEWHEEL 消息发送到具有适当增量的目标窗口 问题是 在某些情况下 我很难复制那些消息i thinkwindows 正在发送到目
  • CUDA:如何检查计算能力是否正确?

    使用较高计算能力编译的 CUDA 代码将在计算能力较低的设备上完美执行很长一段时间 然后有一天在某些内核中默默地失败 我花了半天时间追寻一个难以捉摸的错误 结果发现构建规则已经sm 21而该设备 Tesla C2050 是2 0 是否有任何
  • 如何在 HTML 中打印每个项目之间有延迟的列表

    Id for each item p p p p p p
  • 如何在 Asp.Net-MVC 中添加自定义 HTTP 标头

    我创建了一个自定义处理程序 如下所示 public class SitHandler DelegatingHandler protected override async Task
  • facebook php,如何使用结果分页?

    您好 我正在使用 Facebook PHP SDK v 3 1 1 我不明白如何使用结果分页 url 我想获取我所有朋友的列表 这是我的代码 friends fb gt api me friends friend Array data gt
  • Invalid Uri : uri 方案无效

    我正在尝试通过 WebRequest 登录网站 我此时遇到异常 WebRequest req WebRequest Create formUrl Trim string url string username string password
  • iOS 6 中使用 AudioFileServices 进行粒度合成

    我对我正在开发的声音合成应用程序有疑问 我正在尝试读取音频文件 使用创建随机 颗粒 颗粒合成技术 http en wikipedia org wiki Granular synthesis 将它们放入输出缓冲区 然后能够使用 OpenAL
  • 带有 ASP.NET 的 Google 日历 API

    我对使用 Google Calendar API 在 ASP NET Webforms C 中添加 修改事件感到困惑 我不确定我是否需要 oAuth 或者什么 我的应用程序位于我自己的服务器上 访问我自己的域和我自己的日历 我不需要其他用户
  • R:将矩阵重新排列为三列

    我在 R 中有一个矩阵 每个条目i j是分数 rownames 和 colnames 是 id 我只想要一个 3 列矩阵 而不是矩阵 i j score 现在我正在使用嵌套 for 循环 喜欢 for i in rownames g pri
  • 关于PE的魔数

    0x10b PE32 executable 0 107 ROM image 0x20b PE32 64 bit executable 是什么ROM image 有趣的问题 我涉足过操作 PE 文件 但从未注意到这一点 我认为它们的用途如下
  • 修改 tar 存档中嵌套的文件

    我正在尝试做一个grep然后一个sed搜索文件内的特定字符串 这些文件位于多个 tar 内 全部位于一个主 tar 存档内 现在 我通过以下方式修改文件 首先解压主 tar 存档 然后将里面的焦油全部提取出来 然后进行递归grep进而sed
  • JavaScript 正则表达式排除某些单词/短语?

    如何编写正则表达式模式来测试字符串是否包含多个具有以下结构的子字符串 cake xxx xxx 是哪里任何但不是 奶酪 或 牛奶 或 黄油 例如 I have a cake honey and cake egg 应该返回true but I
  • 防止 WPF 窗口最小化(主要是 Winkey + D)

    我有一个应该像 Windows Vista 小工具一样运行的窗口 它应该保留在桌面上 而不是出现在任务栏和 alt tab 菜单上 但最重要的是 不要最小化 这是它的标题 由于其样式设置为 None 因此它没有控制按钮 最小化 关闭等 但仍
  • Jenkins 向错误的提交 ID 发送通知

    我有几个 Jenkins 管道 所有管道都从 Bitbucket 导入共享库以实现某些实用方法 并且我想将构建状态通知发送到每个项目自己的 Bitbucket 存储库 我安装了Bitbucket 构建状态通知器 https plugins
  • 如何在Spring-MVC方法中绑定抽象类的子类?

    给定 Spring MVC 控制器中的 保存 方法 RequestMapping value save public void save ModelAttribute MY KEY final MyModel myModel 拥有位于myM
  • xdebug、PhpStorm 和 Laravel 3 / mod_rewrite 未命中断点

    我非常绝望并且没有想法 我已经为 Laravel 3 项目配置了 xdebug 和 PhpStorm 在 Mac OS X Apache 上本地运行该项目 因此 PhpStorm 和 Web 应用程序在同一台计算机上运行 配置虚拟主机 使
  • 从迭代器中删除 N 个值的 Pythonic 解决方案

    有没有一个Pythonic解决方案可以删除n来自迭代器的值 你可以通过丢弃来做到这一点n值如下 def drop it n for in xrange n it next 但在我看来 这并不像 Python 代码应有的那么优雅 我在这里缺少
  • 如何使用 cPanel 重新启动 NodeJS

    我需要知道从基于 cPanel 的服务器的根端使用什么来重新启动 NodeJS 应用程序 例如 如果进程由于某种原因现在终止 NodeJS 应用程序将不会启动 直到我手动启动它 如果服务器重新启动 我需要手动重新启动它 此外 这是服务器上多
  • Material-UI:更改 TextField 中的自动填充背景颜色

    目前 我有一个样式化的文本字段 当我开始在电子邮件字段中输入时 会出现自动填充选项 如果我选择自动填充选项之一 文本字段的背景将变为白色并带有黑色文本 我想改变这些风格 我试过这个 import withStyles from materi