在Focus,React上更改Material-UI文本字段的样式

拉斐·齐亚·米尔(Rafay Zia Mir)

我是第一次学习Material-UI。我想自定义材质UI的TextField。我可以在未选择文本字段的情况下更改其样式,在聚焦时无法更改其样式。我正在ThemeProvider将样式注入到组件中。我已经尝试过此代码

import React from "react";
import Checkbox from "@material-ui/core/Checkbox";
import TextField from "@material-ui/core/TextField";

import {
  createMuiTheme,
  makeStyles,
  createStyles,
  Theme as AugmentedTheme,
  ThemeProvider
} from "@material-ui/core/styles";
import { orange, blue, green } from "@material-ui/core/colors";

const useStyles = makeStyles(theme =>
  createStyles({
    root: {
      color: green[900],
      "&.Mui-focused": {
        border:"2px solid blue",
    }
    },

  })
);

function CustomCheckbox() {
  const classes = useStyles();

  return (
    <TextField
    variant='outlined'
    classes={{
      root:classes.root,
    }}      
    />
  );
}
const theme = createMuiTheme({
});

export default function CustomStyles() {
  return (
    <ThemeProvider theme={theme}>
      <CustomCheckbox />
    </ThemeProvider>
  );
}

问题:
如何更改焦点上的TextField样式?帮助将不胜感激

德克尔

实际上,您可能需要设置的是className InputProps

<TextField variant="outlined" InputProps={{ className: classes.root }} />

如果您还想删除字段集的边界(或仅控制该边界),则可以使用以下方法进行设置:

const useStyles = makeStyles(theme =>
  createStyles({
    root: {
      color: green[900],
      "&.Mui-focused": {
        border: "2px solid red",
        '& .MuiOutlinedInput-notchedOutline': {
          border: 'none'
        }
      }
    }
  })
);

您可以在此处找到一个有效的示例:检查以下内容:https : //codesandbox.io/s/style-text-field-htbem?file=/src/App.js

您可以在此处找到有关MUI与Input组件一起使用的不同类的更多信息:https : //material-ui.com/api/input/#css

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Material-ui中,何时使用输入与文本字段构建表单?

ReactJS-如何从material-ui设置文本字段的值?

在MDL文本字段上更改颜色

React + Material UI-文本字段“ onChange”从未触发

我无法在Material-UI中编辑文本字段

在Focus React Native上更改TextInput样式

如何渲染material-ui输入控件,而不是materials-ui-datepicker的文本字段

具有特定日期格式的Material-UI文本字段

如何在Material-UI文本字段中设置当前日期

如何在右边的material-ui文本字段中获得标签?

删除Material-UI选择文本字段上的标签

如何使用酶对Material-ui文本字段进行单元测试?

React Material-UI文本字段屏幕抖动

如何设置类似于Material-UI的轮廓文本字段的静态轮廓div?

Material-ui文本字段的零值为零

如何在Material ui自动完成的输入文本字段中显示所选值?

如何在Material UI文本字段中使用test-id

React Material UI文本字段标签问题

使用段落来排列Material-UI文本字段

我无法更改文本字段的文本

Material UI 不支持多行文本字段上的彩色文本 (React)

如果内容从默认更改,则更改文本字段输入样式

如何为 Material UI 文本字段正确设置 onKeyPress 事件?

React - 通过对象数组映射以在 Material UI 中创建日期文本字段

如何在 Material UI 中设置日期文本字段的值

禁用基于自动完成值的文本字段 React js - Material Ui

无法使用 formik 更改 material-ui 中的文本字段值

如何在不使用 Material UI 库的情况下创建类似于 Material UI 文本字段的文本字段?

Material-ui 文本字段在重新渲染后失去焦点。如何解决?