reactjs - Material UI 禁用复选框悬停

标签 reactjs material-ui

我正在尝试禁用 Material UI Checkbox 组件周围的圆形悬停。当未选中复选框时,悬停被禁用,但我也需要在选中复选框时禁用悬停。有什么技巧可以做到这一点吗?

这是我的复选框组件:

<FormControlLabel
    control={
        <Checkbox
             className={classes.checkbox}
             icon={
                 <CheckBoxOutlineBlankIcon />
             }
             checkedIcon={
                 <CheckBoxIcon />
             }
        />
/>

这是我的造型。这会在未选中复选框时删除悬停,但在选中复选框时不会删除悬停:

checkbox: {
    "&:hover": {
        backgroundColor: "transparent",
    },
},

最佳答案

悬停效果来自嵌套在复选框内的 IconButton 组件。要禁用此目标,请使用根类并使用 !important 添加背景颜色,以便 IconButton 的悬停效果具有更高的特异性。

<FormControlLabel
  control={
    <Checkbox
      disableRipple
      icon={<CheckBoxOutlineBlankIcon fontSize="small" />}
      checkedIcon={<CheckBoxIcon fontSize="small" />}
      classes={{root:classes.root}}
    />
  }
  label="Custom size"
/>
const useStyles = makeStyles(() => ({
  root: {
    '&:hover': {
      backgroundColor: 'transparent !important'
    }
  }
}));

这是工作演示:-
Edit Material demo (forked)

关于reactjs - Material UI 禁用复选框悬停,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65826213/

相关文章:

material-ui - 如何创建链接(或传递任何其他 html/jsx)到 Material-UI <Checkbox ... label ="string"/> 组件的标签中

javascript - 如何将现有项目与jsconfig集成

reactjs - 如何使用react-google-maps包通过放大 react 来聚焦于标记位置

javascript - 如何使用 React 切换复选框以将样式更改为删除线

css - 如何使用 Material UI withStyles 为 css 类应用样式。 WithStyles 不工作

javascript - MuiThemeProvider.render() : A valid React element (or null) must be returned

reactjs - 如何使用 Material ui 处理快速拨号操作?

javascript - Material-UI:TextField:react-addons-css-transition-group 与多行 TextField 中断

javascript音频对象addeventlistener不更新状态

javascript - react 虚拟网格排序图标