Material-UI Grid项目高度

时间:2018-06-07 14:09:49

标签: material-ui

我有一个包含多个项目的行,我希望所有项目的高度等于最高项目的高度,我基本上希望所有项目都与此网格的高度相同。

<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

2 个答案:

答案 0 :(得分:8)

只需将height: 100%应用于Grid项的子项。在沙盒中提供的代码中,将此属性添加到节类中:

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

答案 1 :(得分:6)

我认为仅在Grid容器中设置{{alignItems =“ stretch”}}即可达到您的期望? (当direction =“ row”时,它将使所有项目成为容器的高度。)