【发布时间】:2020-08-12 13:44:34
【问题描述】:
我正在使用 Material-UI,并且我有一个带有 TextFields 的表单。
当我激活 popper 时,表单文本字段中的标签会覆盖 popper,但不会覆盖字段本身。为什么会叠加,如何移除叠加层以使 popper 位于顶部?
以下是相关代码:
<Popper id="userList" open={searchOptionsOpen} anchorEl={anchorEl} transition>
{({ TransitionProps }) => (
<Fade {...TransitionProps} timeout={350}>
<ClickAwayListener onClickAway={handleClose}>
<Paper fullWidth>
<Grid container>
<Grid item xs={12}>
<List className={styles.popperList}>
<ListItem>
<ListItemText className={styles.popperAddNewUser} primary="Add new user" />
</ListItem>
{fetchedUsers.map((user, index) => (
<ListItem key={index}>
<ListItemText>{user.displayName}</ListItemText>
</ListItem>
))}
</List>
</Grid>
</Grid>
</Paper>
</ClickAwayListener>
</Fade>
)}
</Popper>
</Grid>
<Grid item xs={12} className={styles.header}>
<Typography variant="h2">{t('users.add.userDetails')}</Typography>
</Grid>
<Grid item xs={6}>
<TextField
fullWidth
required
aria-labelledby="first-name-text"
id="firstName"
value={userDetails.firstName}
onChange={handleTextChange('userDetails')}
variant="outlined"
label={t('users.add.input.firstName')}
margin="dense"
className={styles.leftTextField}
/>
</Grid>
【问题讨论】:
-
也许在叠加层上设置 Z-Index 会有所帮助?
-
@Harben,我尝试将 Paper 组件的 z-index 设置为 999。标签的 z-index 为 1。它仍然不起作用。
-
如果有人有这个问题,它的价值是什么。 @Harben 是对的。我只是将 z-index 设置为错误的组件。如果你在 Popper 本身上设置它,它就可以工作。
-
我很高兴它成功了!感谢关注
标签: reactjs material-ui popper.js