如何对齐material-ui Grid项目垂直居中?

时间:2020-10-07 08:39:47

标签: reactjs material-ui

我有一个Grid容器和Buttons作为它的子项(Grid-items)。我想将网格项垂直居中对齐。

这是我的要求的视觉表示

enter image description here

这是标记

<Box height="10vh" mr={4}>
  <Grid container justify="flex-end" spacing={2}>
    <Button variant="contained" color="default" type="reset">
      Reset
    </Button>
    <Button
      type="submit"
      variant="contained"
      color="primary"
      onClick={() => handleSubmit()}
    >
      Search
    </Button>
  </Grid>
</Box>;

有人可以告诉我基于material-ui grid API的解决方案吗?

2 个答案:

答案 0 :(得分:1)

我发现这应该可行,

const useStyles = makeStyles({
  grid: {
    height: "100%"
  }
});

export default function Hook() {
  const classes = useStyles();

  return (
    <Box height="10vh" mr={4}>
      <Grid
        className={classes.grid}
        container
        justify="flex-end"
        alignItems="center"
        spacing={2}
      >
        <Button variant="contained" color="default" type="reset">
          Reset
        </Button>
        <Button
          type="submit"
          variant="contained"
          color="primary"
          onClick={console.log}
        >
          Search
        </Button>
      </Grid>
    </Box>
  );
}

工作沙箱,https://codesandbox.io/s/material-demo-forked-m7fyj?file=/demo.js

Working example image

答案 1 :(得分:0)

<Grid
  container
  direction="row"
  justify="flex-end"
  alignItems="center"
>

vertically centered

我建议您尝试Interactive Demo