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

如何实现动态卡片列表的横向网格响应式布局

解决方案

问题出在布局结构和类名使用上,以下是修正后的代码:

<ion-grid>
  <ion-row class="ion-padding-top">
    @for (item of myList; track item.userId) {
      <ion-col size="12" size-md="4" class="ion-padding">
        <ion-card>
          <ion-avatar>
            <img alt="Silhouette of a person's head" src="https://ionicframework.com/docs/img/demos/avatar.svg" />
          </ion-avatar>
          <ion-card-header>
            <ion-card-title>Card Title</ion-card-title>
            <ion-card-subtitle>Card Subtitle</ion-card-subtitle>
          </ion-card-header>
        
          <ion-card-content>
            Here's a small text description for the card content. Nothing more, nothing less.
          </ion-card-content>
        </ion-card>
      </ion-col>
    }
  </ion-row>
</ion-grid>

关键修正点:

  • 移除循环内的ion-row:将ion-row放在循环外部,让所有卡片共享同一行容器,Ionic会自动根据列数换行
  • 使用Ionic原生响应式列类:size="12"确保小屏设备卡片占满整列,size-md="4"(12÷4=3)实现大屏设备每行3个卡片的布局
  • 替换Bootstrap类:用Ionic的ion-col替代Bootstrap的col-4,避免框架类名冲突
  • 移除冗余的ion-list:ion-grid是更适合网格布局的容器,ion-list用于列表项展示,会干扰网格布局逻辑
  • 添加内边距:给ion-col添加ion-padding,让卡片之间保持合理间距

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 05:22:17