简体   繁体   English

使用 MaterialUI Grid 指定 ::after 样式

[英]Specify ::after style with MaterialUI Grid

I read Flex-box: Align last row to grid and trying to see if this will work for me too:我阅读了Flex-box: Align last row to grid并尝试查看这是否也适用于我:

.grid::after {
  content: "";
  flex: auto;
}

but not sure how to specify this in JS styles that I use in MaterialUI:但不确定如何在我在 MaterialUI 中使用的 JS 样式中指定它:

const useStyles = makeStyles((theme) => ({
  root: {
    flexGrow: 1,
  },
  paper: {
    height: 140,
    width: 140,
  },
  control: {
    padding: theme.spacing(2),
  },
  fullName: {
    marginRight: '3px'
  }
}));

Like how do I add after to a MaterialUI Grid?就像我如何添加到 MaterialUI 网格?

 <Grid className={classes.root} container justify="space-around" spacing={2}>
   <CompanyList companies={companies} data-test-id="companyList" />
 </Grid>

You could use like below:你可以像下面这样使用:

const useStyles = makeStyles((theme) => ({
  grid: {
    // --- some styles
    '&::after': {
        // --- some style
    }

  },
}));

It's similar task as to add pseudo element to material-ui component向 material-ui 组件添加伪元素类似的任务

content attribute needed to be double quoted内容属性需要双引号

Working exammple工作示例

const useStyles = makeStyles((theme) => ({
  root: {
    flexGrow: 1,
    "&::after": {
      content: '""',
      width: 40,
      height: 40,
      backgroundColor: "cyan",
      color: "white"
    }
  },
}));

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

  return (
    <div>
      <h1>Material</h1>
      <Grid
        className={classes.root}
        container
        justify="space-around"
        spacing={2}
      >
        <CompanyList companies={companies} data-test-id="companyList" />
      </Grid>
    </div>
  );
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM