Вам нужно будет переупорядочить элементы, внеся изменения в HTML или используя свойство order
.
Если каждый card-body
представляет собой гибкий столбец, мы можем использовать order
свойство, чтобы изображение div отображалось последним визуально в каждом столбце, а затем margin-top:auto
, чтобы переместить его в конец столбца.
.card-body {
flex: 1;
}
.card-body .image {
order: 2;
margin-top: auto;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet" />
<div class="container-fluid">
<div class="row">
<div class="col-lg-3 col-md-4 col-sm-6 col-xs-12 d-flex flex-column">
<div class="card-body flex-fill d-flex flex-column">
<h4 class="article-preview__headline"><a href="#">title</a></h4>
<div class="image align-items-end">
<a href="#"><img class="mt-auto" style="width: 100%; height: auto" src="http://www.fillmurray.com/300/200" alt="Image" /></a>
</div>
<a class="link" href="#">Link goes here</a>
<hr/>
</div>
</div>
<div class="col-lg-3 col-md-4 col-sm-6 col-xs-12 d-flex flex-column">
<div class="card-body flex-fill d-flex flex-column">
<h4 class="article-preview__headline"><a href="#">title long title long title long title long title long</a></h4>
<div class="image align-items-end">
<a href="#"><img class="mt-auto" style="width: 100%; height: auto" src="http://www.fillmurray.com/300/200" alt="Image" /></a>
</div>
<a class="link" href="#">Link goes here</a>
<hr/>
</div>
</div>
</div>
</div>