为什么我的 MUI 分隔线没有出现在 MUI 容器或纸张中?

问题描述

早上好,

我爱上了 MUI,可以做的事情太多了。但是,在广泛使用它之后,我注意到当 MUI Divider 是 Container 或 Paper 组件的子级时,它不会出现。我找不到任何关于为什么会这样的信息,所以这可能是我的实现。有人可以检查一下,看看为什么它没有出现吗?

一切都已导入,Popover 工作正常。

谢谢!

navBarPopover: {
    display: "flex",flexDirection: "column",alignItems: "center",justifyContent: "center"
}

<Popover 
    id={id}
    open={open}
    anchorEl={anchorEl}
    onClose={handleClose}
    anchorOrigin={{
        vertical: "top",horizontal: "right",}}
    transformOrigin={{
        vertical: "top",}}
>
  <Container className={clsx(classes.navBarPopover)}>
      <Button className={clsx(classes.loginButton)} component={Link} to="/user_auth" onClick={() => handleClose()}>
          Login
      </Button>
      <Divider />
      <Button className={clsx(classes.loginButton)} component={Link} to="/faqs" onClick={() => handleClose()}>
          FAQs
      </Button>
  </Container>
</Popover>

解决方法

我同意,Material-UI 真的很棒。
在本期中,您将 display:'flex' 提供给父容器。通过提供 flex,子元素采用最小可能的宽度,因为 flex-shrink 默认存在于子元素上。
因此,此处 Divider 存在,但其宽度为 0。将宽度设置为 100%。

<Divider style={{width:'100%'}} />

在此处查看演示:- https://codesandbox.io/s/happy-euler-2ycv4