Reputation: 394
I've followed the CSS grid guidelines for making a responsive card grid, but the grid only displays cards vertically on the page and doesn't expand horizontally to match the browser's width.
Any help would really be appreciated~!
Check out the code pen here: https://codepen.io/synapse709/pen/aLdbPP
.card_wrapper {
display: grid;
padding: 30px 28px;
grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
grid-gap: 60px;
align-items: stretch;
}
.site_card {
display: grid;
background-color: grey;
border-radius: 4px;
box-shadow: 0 2px 2px 1px rgba(0, 0, 0, 0.10);
width: auto;
max-width: 340px;
height: 340px;
}
<div class="card_wrapper">
<div class="site_card"></div>
<div class="site_card"></div>
<div class="site_card"></div>
</div>
Upvotes: 2
Views: 853
Reputation: 42362
You have max-width
set on your grid items - remove that and it works good:
.card_wrapper {
display: grid;
padding: 30px 28px;
grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
grid-gap: 60px;
align-items: stretch;
}
.site_card {
display: grid;
background-color: grey;
border-radius: 4px;
box-shadow: 0 2px 2px 1px rgba(0, 0, 0, 0.1);
width: auto;
/*max-width: 340px;*/
height: 340px;
}
.site_card .card__site_preview {
position: fixed;
top: 0;
height: 260px;
width: auto;
}
.site_card .card__site_preview .card__title {
color: black;
font-size: 16px;
padding: 10px 20px 15px;
text-align: left;
}
.site_card .card__site_preview .card__title .card__subtext {
color: light-grey;
padding: 10px 20px 15px;
text-align: left;
}
<div class="card_wrapper">
<div class="site_card"></div>
<div class="site_card"></div>
<div class="site_card"></div>
</div>
Upvotes: 2