Kar*_*ren 5 html javascript css reactjs material-ui
我正在尝试更改IconButton材料组件内材料图标的颜色(应触发颜色更改的操作 - 悬停在 上IconButton)。
这怎么可能?仅当鼠标悬停在图标本身而不是IconButton.
我的代码:
<IconButton className="add-icon-btn" onClick={toggleNominationForm}>
{!showForm ? <AddBoxIcon /> : <IndeterminateCheckBoxIcon /> }
</IconButton>
Run Code Online (Sandbox Code Playgroud)
Cev*_*mic 10
这里有一个完整的示例,我希望这可以解决您的问题:
import React from 'react'
import { makeStyles } from '@material-ui/styles'
import IconButton from '@material-ui/core/IconButton'
import AddBoxIcon from '@material-ui/icons/AddBox'
import IndeterminateCheckBoxIcon from '@material-ui/icons/IndeterminateCheckBox'
export default () => {
const [showForm, setShowForm] = React.useState(false)
const classes = useClasses()
return (
<IconButton
classes={{
root: classes.iconContainer
}}
>
{!showForm
? <AddBoxIcon className={classes.icon}/>
: <IndeterminateCheckBoxIcon className={classes.icon}/>
}
</IconButton>
)
}
const useClasses = makeStyles(theme => ({
iconContainer: {
"&:hover $icon": {
color: 'red',
}
},
icon: {
color: 'blue',
},
}))
Run Code Online (Sandbox Code Playgroud)
您可以使用以下属性
sx={{ "&:hover": { color: "blue" } }}
Run Code Online (Sandbox Code Playgroud)
<IconButton
size="large"
aria-label="show 17 new notifications"
color="inherit"
sx={{ "&:hover": { color: "blue" } }}
>
<Badge badgeContent={17} color="primary">
<LayersIcon />
</Badge>
</IconButton>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3905 次 |
| 最近记录: |