Material-UI formControlLabel 整个标签是可点击的,只有文本应该是
Posted
技术标签:
【中文标题】Material-UI formControlLabel 整个标签是可点击的,只有文本应该是【英文标题】:Material-UI formControlLabel whole label is clickable only text should be 【发布时间】:2020-07-18 09:58:38 【问题描述】:我是material UI
的新手。这里我有以下form
<FormControl
variant="outlined"
className=css.formControl
margin="dense"
key="abc_" + index
>
<FormControlLabel
control=
<Checkbox
onClick=handleClick(data)
checked=_.some(selected, Id: selected.Id )
value=selected.Id
color="default"
/>
label=data?.Name ?? "NO_LABEL"
/>
</FormControl>
现在,由于该区域有点长,因此整个标签都可以点击,所以,我正在尝试的是唯一的复选框,并且文本应该是可点击的,而其他空白区域不应该被点击。在这里,我已经给出了
max-width for that label to be 272px.
如何添加?
谢谢。
【问题讨论】:
如果您能提供一个code sandbox 来重现您在可点击文本后有空白区域的问题,那将会很有帮助。我怀疑这可能与您的css.formControl
类中的 CSS 有关(可能设置了显式宽度?)。
【参考方案1】:
您可以阻止父元素发生点击事件,也可以允许子元素这样做。
使用pointer-events 禁用点击事件。
pointer-events: none;
<FormControlLabel
style= pointerEvents: "none"
control=
<Checkbox
onClick=handleClick
style= pointerEvents: "auto"
color="default"
/>
label="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
/>
【讨论】:
以上是关于Material-UI formControlLabel 整个标签是可点击的,只有文本应该是的主要内容,如果未能解决你的问题,请参考以下文章
Material-UI 无法解析 '@material-ui/core/styles/createMuiTheme
ReactJS + Material-UI:如何减小 Material-UI 的 <TableRow/> 的列宽?
ReactJS + Material-UI:如何在每个 TableRow 中使用 Material-UI 的 FlatButton 和 Dialog?
material-ui:找不到模块:'./AccessAlarm'
ReactJS + Material-UI:如何使用 Material-UI 的 <DatePicker> 将当前日期设置为默认值?
ReactJS + Material-UI:如何在 Material-UI <Table/> 的 <TableRow/> 之间交替颜色?