try it
<div class="container"> <div class="card-deck"> <div class="card my-3"> <img src="http://placehold.it/560x560" class="card-img-top"> <div class="card-body"> <h4 class="card-title">Title</h4> <p class="card-text">Nullam id dolor id nibh ultricies vehicula ut id elit.</p> <button class="btn btn-primary" type="button">Button</button> </div> </div> <div class="card my-3"> <img src="http://placehold.it/560x560" class="card-img-top"> <div class="card-body"> <h4 class="card-title">Title</h4> <p class="card-text">Nullam id dolor id nibh ultricies vehicula ut id elit.</p> <button class="btn btn-primary" type="button">Button</button> </div> </div> <div class="card my-3"> <img src="http://placehold.it/560x560" class="card-img-top"> <div class="card-body"> <h4 class="card-title">Title</h4> <p class="card-text">Nullam id dolor id nibh ultricies vehicula ut id elit.</p> <button class="btn btn-primary" type="button">Button</button> </div> </div> <div class="card my-3"> <img src="http://placehold.it/560x560" class="card-img-top"> <div class="card-body"> <h4 class="card-title">Title</h4> <p class="card-text">Nullam id dolor id nibh ultricies vehicula ut id elit.</p> <button class="btn btn-primary" type="button">Button</button> </div> </div> </div> </div>
// Bootstrap 4 breakpoints & gutter $grid-breakpoints: ( xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px ) !default; $grid-gutter-width: 30px !default; // number of cards per line for each breakpoint $cards-per-line: ( xs: 1, sm: 2, md: 3, lg: 4, xl: 5 ); @each $name, $breakpoint in $grid-breakpoints { @media (min-width: $breakpoint) { .card-deck .card { flex: 0 0 calc(
Demo on codepen Bootstrap 4, responsive deck of cards
source share