You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React.js中如何让map函数渲染的组件列表实现水平对齐

解决方案

问题根因

  • 你错误地将flex布局属性写在了每个<Typography>子元素的类上,flex布局需要作用在父容器上才能控制子元素的排列方向
  • flex-direction不存在horizontal这个合法属性值,水平排列对应的属性值是row(也是flex布局的默认值,不单独声明也生效)

具体修改步骤

第一步:调整组件结构

给包裹所有页码的父容器<Table.Cell>添加自定义类,移除每个<Typography>上的pages类,给单个页码可选加独立类用于自定义样式:

<Table.Cell className="pagination-wrapper">
 {[...Array(this.props.numPages)].map((e, i) => (
   <Typography 
     customLink 
     onClick={() => this.handlePageClick(i + 1)} 
     key={'key'.concat(i)} 
     className='page-item'
   >
     {i + 1}
   </Typography>
 ))}
</Table.Cell>

第二步:修改CSS样式

给父容器添加flex布局属性,可根据需求调整间距、对齐规则:

.pagination-wrapper {
  display: flex;
  gap: 10px; /* 调整页码之间的水平间距 */
  align-items: center; /* 让所有页码垂直居中对齐 */
}

/* 单个页码的自定义样式按需添加即可 */
.page-item {
  cursor: pointer;
  padding: 2px 6px;
}

内容的提问来源于stack exchange,提问作者rudeTool

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 21:21:00