我正在try 使用JUSTUST属性将我的主MUI网格居中,该属性使网格居中,但也使其中的项居中.我希望我的栅格元素flex-start对齐,而不是以栅格为中心.但是,align-item属性在MUI网格上不起作用.

我做错了什么?

App.js

   <Container maxWidth="xl" style={{ marginTop: '50px' }}>
      <Grid container spacing={isMobile ? 1 : 8} className="grid-container" justifyContent="center">
        {[0, 1, 2, 3, 4, 5].map((value) => (
          <Grid key={value} item xs={6} sm={5} md={4} xl={2.6} lg={4}>
            <Box display="flex" justifyContent="center">
              <div style={{ alignSelf: 'flex-start', width: '100%' }}>
                <NavLink to={`/shoepage/${value}`} style={{ textDecoration: 'none' }}>
                  <Igrid />
                </NavLink>
              </div>
            </Box>
          </Grid>
        ))}
      </Grid>
    </Container>

推荐答案

MUI中的网格组件不呈现display: grid,但它呈现柔体.网格的spacingprops 打破了样式,因为它增加了负边距.读一读here.所以,问题在于当你使用间隔props 时,它添加的填充.以下是一个不带空格的基本示例:

const { Box, Grid } = MaterialUI;

function App() {
  return (
    <div className="App">
      <Grid
        container
        style={{
          border: "1px solid red",
          justifyContent: "center",
        }}
      >
        {[0, 1, 2, 3, 4, 5].map((value) => (
          <Grid
            key={value}
            item
            xs={6}
            sm={5}
            md={4}
            lg={4}
            style={{
              border: "1px solid blue",
              // justifyContent: "flex-start",
            }}
          >
            <Box>
              <div style={{ alignSelf: "flex-start", width: "100%" }}>
                {value}
              </div>
            </Box>
          </Grid>
        ))}
      </Grid>
    </div>
  );
}

ReactDOM.createRoot(
    document.getElementById("root")
).render(
    <App />
);
<div id="root"></div>
<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/@mui/material@latest/umd/material-ui.development.js" crossorigin="anonymous"></script>

Reactjs相关问答推荐

未捕获的类型错误:类型Orbitum创建者未定义

两条react 路由的行为不同.有没有人能解释一下,我已经找了好几天了

如何在Reac.js中通过子组件和props 调用父组件函数?

XChaCha20-Poly1305的解密函数

根据处于react 状态的数组的名称键,将新对象添加到嵌套的对象数组中

为什么react日历时间轴项Renderprops 不能与useState挂钩一起使用?

React-apexcharts 中的 Y 轴刻度不会动态更新符号

使用以Jest 的方式返回 Promise 的方法来模拟可构造的 API 类时出现问题

如何更新 FunctionComponentElement 的 props

如何管理组件列表的复杂状态? (Nextjs/ReactJS)

Syncfusion:带有 TabItemsDirective 的选项卡组件不显示任何内容

数据表格组件需要所有行都具有唯一的ID属性.或者,您可以使用getRowId属性.

React设置上下文并进行导航

React对象值下降2次而不是1次

在遵循 react-navigation 的官方文档时收到警告消息

状态链接未传递到路由页面

如何在 React map 函数循环中使用
标签

Redux,状态未定义

调用 Statsig.updateUser 时 UI 不呈现

react 测试显示错误的结果