【问题标题】:Material-UI Grid Item heightMaterial-UI 网格项目高度
【发布时间】:2018-11-17 11:55:58
【问题描述】:

我有一排有多个项目,我希望所有项目的高度等于最高项目的高度,我基本上希望所有项目对于这个网格都具有相同的高度。

<Grid container layout={'row'} spacing={8}>
      <Grid item className={classes.section} xs={12} sm={12} md={4} lg={4} xl={4}>
        <div className={classes.teamMemberName}>
          {name}
        </div>
      </Grid>

      <Grid item xs={12} sm={12} md={4} lg={4} xl={4} className={classes.section}>
        <FirstTimeFillRate fillRate={firstTimeFillRate} />
      </Grid>

      <Grid item xs={12} sm={12} md={4} lg={4} xl={4} className={classes.section}>
        <BackOrders
          backOrdersByItem={backOrdersByItem}
          backOrdersStoresWait={backOrdersStoresWait}
        />
      </Grid>

      <Grid item xs={12} sm={12} md={4} lg={4} xl={4} className={classes.section}>
        <OrderVolume orderVolume={orderVolume} />
      </Grid>

      <Grid item xs={12} sm={12} md={8} lg={8} xl={8} className={classes.section}>
        <Inventory inventory={inventory} />
      </Grid>
    </Grid>

section 类的背景颜色为灰色,我可以看到这些部分没有继承行的高度,如在此沙箱中所见:https://codesandbox.io/s/1826lw51z3

【问题讨论】:

    标签: material-ui


    【解决方案1】:

    只需将height: 100% 应用于网格项的子项。在您在沙箱中提供的代码中,将此属性添加到部分类中:

    const section = {
      height: "100%",
      paddingTop: 5,
      backgroundColor: "#fff"
    };
    

    请注意,您问题中的代码示例与沙箱不同,因此 JSX 应如下所示:

    <Grid item xs={12} md={4}>
      <div style={section}>component</div>
    </Grid>
    

    这是带有工作演示的更新沙盒:https://codesandbox.io/s/m7r7jnzzlx(自 2022 年 1 月 10 日起不再编译)

    【讨论】:

    • 这个沙盒不再工作了。
    • @lowcrawler 感谢您让我知道。它看起来像一个 Babel 依赖问题,但我不会调查或修复它,因为 MUI v5 已经过时(沙箱使用 v1),实际实现已经严重过时。
    • 知道如何在 MUI v5 中做到这一点吗?如果你愿意,很高兴提出一个新问题......
    【解决方案2】:

    我认为只需在 Grid 容器中设置 {{alignItems="stretch"}} 就可以满足您的需求? (当 direction="row" 时,它使所有项目都成为容器的高度)。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-06
    • 2021-08-25
    • 2019-09-13
    • 2021-08-16
    • 2021-06-09
    • 2019-01-31
    • 2021-10-07
    • 1970-01-01
    相关资源
    最近更新 更多