gpt4 book ai didi

css - 如何在 material ui REACTjs 中覆盖 menuItem 中的选定类?

转载 作者:行者123 更新时间:2023-12-05 09:13:42 24 4
gpt4 key购买 nike

你好,我遇到了一个问题,我无法覆盖在选择 menuItem 时显示正确样式的类:这是我的代码:

       <MenuItem component={Link} to="/Acceuil" 
className={{root:classes.menuItem ,selected:classes.selected}}
selected={pathname === "/Acceuil"} >
<ListItemIcon>
<Icon className={classes.icon} >
insert_drive_file
</Icon>
</ListItemIcon>
Gestion Commandes
</MenuItem>

这是常量类:

      Const classes = theme => ({
menuItem: {
fontStyle:'bold',
backgroundColor: 'white',
width: '88%',
'&:active':{
borderLeft: '4px solid #51bcda',
backgroundColor: "-webkit-box-shadow: 6px 4px 53px -7px
rgba(0,0,0,0.75), -moz-box-shadow: 6px 4px 53px -7px
rgba(0,0,0,0.75), box-shadow: 6px 4px 53px -7px
rgba(0,0,0,0.75),",
},
selected:{
backgroundColor:'red !important'
}
});

谢谢你帮助我^^

最佳答案

要了解如何使用适当的特异性来设置样式,您需要查看 ListItem source code (MenuItem 将其大部分样式委托(delegate)给 ListItem)。

以下是 selected 状态的 ListItem 样式的相关部分:

export const styles = theme => ({
root: {
'&$selected, &$selected:hover, &$selected:focus': {
backgroundColor: theme.palette.action.selected,
},
},
/* Styles applied to the root element if `selected={true}`. */
selected: {},
});

下面我提供了一个覆盖所选 MenuItem 样式的示例以及有效的 CodeSandbox基于 Selected menus demo .

const styles = theme => ({
menuItemRoot: {
"&$menuItemSelected, &$menuItemSelected:focus, &$menuItemSelected:hover": {
backgroundColor: "red"
}
},
menuItemSelected: {}
});
...
<MenuItem
classes={{
root: classes.menuItemRoot,
selected: classes.menuItemSelected
}}
...

Edit Menu selected styling

这是针对不同 Material-UI 组件的类似问题/答案:Styling BottomNavigation in React.js Material-UI

关于css - 如何在 material ui REACTjs 中覆盖 menuItem 中的选定类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55446073/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com