I have a page with a main card, which contains other small cards inside a grid. I want that all the col to have the same height, which will be the max height between the cols inside a specific row.
This is my template and my styling:
<ion-card color="blue">
<ion-card-content class="welcome-card-content">
<ion-grid class="ion-no-padding">
<ion-row >
<ion-col >
<ion-card color="white-blue"class="small-card">
<ion-card-content class="white-text">
<ion-row class="ion-justify-content-center">
<ion-icon class="home-icons" name="flash"></ion-icon>
</ion-row>
<ion-row class="ion-justify-content-center">
<ion-text >a very long text that takes a lot of vertical space</ion-text>
</ion-row>
</ion-card-content>
</ion-card>
</ion-col>
<ion-col>
<ion-card color="white-blue" class="small-card">
<ion-card-content class="white-text">
<ion-row class="ion-justify-content-center">
<ion-icon class="home-icons" name="add"></ion-icon>
</ion-row>
<ion-row class="ion-justify-content-center">
<ion-text >simple text</ion-text>
</ion-row>
</ion-card-content>
</ion-card>
</ion-col>
</ion-row>
</ion-grid>
</ion-card-content>
</ion-card>
Css file
.small-card{
margin: 3px;
height: inherit;
}
ion-col{
margin: 0px;
padding: 0px;
height: 100%;
}
ion-row{
width: 100%;
height: auto;
}
This is my result so far:
So here is your solution:
<div color="primary" class="main-card">
<ion-row>
<ion-col>
<ion-card>
<ion-card-content>
<ion-row class="ion-justify-content-center">
<ion-icon class="home-icons" name="flash"></ion-icon>
</ion-row>
<ion-row class="ion-justify-content-center">
<ion-text>a very long text that takes a lot of vertical space</ion-text>
</ion-row>
</ion-card-content>
</ion-card>
</ion-col>
<ion-col>
<ion-card>
<ion-card-content>
<ion-row class="ion-justify-content-center">
<ion-icon class="home-icons" name="add"></ion-icon>
</ion-row>
<ion-row class="ion-justify-content-center">
<ion-text>simple text</ion-text>
</ion-row>
</ion-card-content>
</ion-card>
</ion-col>
</ion-row>
<ion-row>
<ion-col>
<ion-card>
<ion-card-content>
<ion-row class="ion-justify-content-center">
<ion-icon class="home-icons" name="flash"></ion-icon>
</ion-row>
<ion-row class="ion-justify-content-center">
<ion-text>a very long text that takes a lot of vertical space</ion-text>
</ion-row>
</ion-card-content>
</ion-card>
</ion-col>
<ion-col>
<ion-card>
<ion-card-content>
<ion-row class="ion-justify-content-center">
<ion-icon class="home-icons" name="add"></ion-icon>
</ion-row>
<ion-row class="ion-justify-content-center">
<ion-text>simple text</ion-text>
</ion-row>
</ion-card-content>
</ion-card>
</ion-col>
</ion-row>
</div>
scss file
.main-card {
background: var(--ion-color-primary);
border-radius: 8px;
display: flex;
flex-wrap: wrap;
margin: 12px;
overflow: hidden;
ion-col {
display: flex;
justify-content: center;
padding: 4px;
}
ion-card {
background: #55bdef;
margin-bottom: 12px;
margin-top: 12px;
width: 100%;
}
ion-card-content {
color: #fff;
}
}
This will solve your problem.