javascript - 如何使 cardHeader 组件中的头像元素居中?

标签 javascript css reactjs material-ui

我正在为前端元素使用 Material UI,并且我有显示数据的卡片。我想在中心的卡片中显示一个头像。我正在使用卡片标题插入我的头像,但无法将其居中。我尝试将 alignContent 和 textAlign 设置为在媒体样式类中居中,但这没有帮助。

我应该怎么做才能实现居中对齐?让我知道我是否应该使用 cardHeader 以外的东西。

<CardHeader
     className={classes.media}
     avatar={<Avatar alt="Alias" src={alias1} className={classes.small} />}
   />

更新:我通过在“小”类中将 marginLeft 和 marginRight 指定为“自动”来获得结果。但接受的答案也有效。

最佳答案

CardHeader 需要一个 title,它以 flex: 1 1 auto 样式呈现,无论您是否提供 >title 是否支持。这就是阻止您在 media 类样式中使用 justifyContent 的原因。

有几种方法可以解决这个问题,但如果您不使用其他 CardHeader Prop ,我会简单地将其替换为 BoxGrid

const {Card, Box, Avatar, CardContent, Typography, makeStyles } = MaterialUI

const useStyles = makeStyles({
  root: {
    backgroundColor: "#eeeeee",
    maxWidth: 400
  }
});

function MyCard() {
  const classes = useStyles();

  return (
    <Card className={classes.root}>
      <Box display="flex" justifyContent="center" alignItems="center" p={2}>
        <Avatar alt="Alias" className={classes.small} />
      </Box>
      <CardContent>
        <Typography variant="body2">
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Impedit modi
          delectus laudantium neque perspiciatis voluptate aut aliquam tempore
          atque nobis.
        </Typography>
      </CardContent>
    </Card>
  );
}

ReactDOM.render(<MyCard />, document.getElementById('root'))
<script src="https://unpkg.com/react@latest/umd/react.development.js" crossorigin="anonymous"></script>
<script src="https://unpkg.com/react-dom@latest/umd/react-dom.development.js"></script>
<script src="https://unpkg.com/@material-ui/core@latest/umd/material-ui.development.js" crossorigin="anonymous"></script>
<script src="https://unpkg.com/babel-standalone@latest/babel.min.js" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap" />
<div id="root"></div>

关于javascript - 如何使 cardHeader 组件中的头像元素居中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65747090/

相关文章:

javascript - JQuery 设置从字符串中选择

JavaScript 终止脚本而不抛出错误

javascript - 是否有组织 Javascript 代码的最佳方法?

html - 来自不同 div 的居中按钮

reactjs - React 导入组件文件夹

javascript - React-vis sankey 标题和图例

php - 如何在 php 中制作一个表单,允许用户在需要时添加其他表单字段?

javascript - 将视频链接到 HTML anchor 标记

html - 我有带有 bootstrap 的 html 模板,我怎样才能将它转换成电子邮件模板

javascript - 百分比圆边框 CSS React