【问题标题】:Material UI Drawer overflow causing scrollbar on body材质 UI 抽屉溢出导致正文滚动条
【发布时间】:2018-12-05 09:12:20
【问题描述】:

我在应用栏抽屉下方使用了一个剪辑,其中一个画布作为主要内容。我在抽屉里有三张可折叠的卡片,当全部设置为默认打开时,它会在 body 上显示一个垂直滚动条,并在带有 body 元素的 html 元素下方显示空白。如果你关闭所有三张牌,卷轴就会消失。如果您重新打开卡片,则不会出现滚动条。只有在所有三张卡片都打开的情况下加载页面时才会出现此问题。

我们的短期解决方案是在仅打开两张卡片的情况下加载页面,但我想注意即使打开两张卡片,抽屉内容也会延伸到窗口下方而没有滚动。抽屉的 CSS 也不应该是问题。其他人遇到过这个问题吗?

  drawerPaper: {
    position: 'relative',
    width: 400,
    overflowX: 'hidden',
    overflowY: 'hidden',
    '&:hover': {
      overflowY: 'auto',
    },
    '&::-webkit-scrollbar': {
      display: 'none',
    },
  },



   <MuiThemeProvider theme={this.state.useDarkTheme ? darkTheme : lightTheme}>
    <div className={classes.root}>
      <AppBar position="absolute" className={classes.appBar}>
        <Toolbar>
          <div className={classes.flex}>
            <Typography className={classes.headerTextColor} variant="title">
              Title
            </Typography>
            {sealedBy}
          </div>
          <HeaderTools />
          <Tooltip id="toggle-icon" title="Toggle light/dark theme">
            <IconButton className={classes.headerTextColor} onClick={this.toggleTheme}>
              <BrightnessMediumIcon />
            </IconButton>
          </Tooltip>
        </Toolbar>
        {spinner}
      </AppBar>
      <Drawer
        variant="permanent"
        classes={{
          paper: classes.drawerPaper,
        }}
      >
        <div className={classes.fixedWidth}>
          <div className={classes.toolbar} />
          <DocumentTools />
          <SealingTools />
          <AnnotationTools />
        </div>
      </Drawer>
      <main className={classes.content}>
        <div className={classes.toolbar} />
        <DrawingCanvas />
      </main>
    </div>
  </MuiThemeProvider>

【问题讨论】:

    标签: reactjs canvas material-ui


    【解决方案1】:

    你需要在一些容器组件上添加height: 100%css属性,drawerPaper的样式也需要添加。

    我已经在这里设置,它的工作,但可能取决于容器组件:

    drawerPaper: {
        width: 250,
        overflow: "auto",
        height: "100%",
        [theme.breakpoints.up("md")]: {
          overflow: "auto",
          width: drawerWidth,
          position: "relative",
          height: "100%"
        }
      }
    

    【讨论】:

    • 我去尝试这样的事情,但现在看来问题已经消失了。这可能是最近更新中修复的 MUI 错误,
    • 高效工作
    猜你喜欢
    • 2020-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-13
    • 1970-01-01
    • 2021-09-28
    • 1970-01-01
    相关资源
    最近更新 更多