HTML
<div class="row first-last-row">
<div class="col-6 col-md-4">
</div>
<div class="col-6 col-md-4">
</div>
...
</div>
JavaScript
// first last row
function firstLastRow(){
if($(".row.first-last-row").length){
$(".row.first-last-row").each(function(){
var col_items = new Array();
var item_offset = false;
var item_single = true;
var items_length = $(this).find(">div").length;
$(this).find(">div").each(function(index){
$(this).removeClass("first-row");
$(this).removeClass("last-row");
$(this).removeClass("single-in-row");
if(item_offset === false){
item_first_row_offset = $(this).offset().top;
}else{
if(item_offset != $(this).offset().top){
if(item_single){
$(col_items[col_items.length - 1]).addClass("single-in-row");
}
item_single = true;
}else{
item_single = false;
}
}
if(index == items_length - 1 && item_offset != $(this).offset().top){
$(this).addClass("single-in-row");
}
item_offset = $(this).offset().top;
col_items.push($(this));
});
if(item_offset !== false){
item_last_row_offset = item_offset;
item_offset = false;
$(this).find(">div").each(function(e){
item_offset = $(this).offset().top;
if(item_offset == item_first_row_offset){
$(this).addClass("first-row");
}
if(item_offset == item_last_row_offset){
$(this).addClass("last-row");
}
});
}
});
}
}
firstLastRow();
$( window ).resize(function() {
firstLastRow();
});