Reputation: 2404
I am making some thumbs with a bootstrap v4 (flexbox) col, but I can't find a solution to make the thumb content fit the entire column.
So if a thumb has more content than another, it will have a bigger height.
I need all the thumbs to have the same size, even if they don't have the same content. It actually works on my project, but only with Chrome.
.row {
display: flex;
display: -ms-flexbox;
display: -webkit-box;
flex-wrap: wrap;
-ms-flex-wrap: wrap;
}
.col-6 {
-webkit-box-flex: 0;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
padding-left: 15px;
padding-right: 15px;
width: 100%;
}
.thumb-accommodation {
height: 100%;
}
.thumb-accommodation__image {
height: 120px;
background-color: deeppink;
color: white;
padding: 10px;
}
.thumb-accommodation__content {
background-color: aqua;
height: calc(100% - 120px);
padding: 10px;
}
h3 {
margin: 0
}
<div class="row">
<div class="col-6">
<div class="thumb-accommodation">
<div class="thumb-accommodation__image">
<span>image</span>
</div>
<div class="thumb-accommodation__content">
<h3>
A realy realy realy realy realy realy realy realy big Title
</h3>
<p>
Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor....
</p>
</div>
</div>
</div>
<div class="col-6">
<div class="thumb-accommodation">
<div class="thumb-accommodation__image">
<span>image</span>
</div>
<div class="thumb-accommodation__content">
<h3>
Title
</h3>
<p>
Lorem ipsum dolor....
</p>
</div>
</div>
</div>
</div>
Upvotes: 1
Views: 192
Reputation: 3785
You can use this jquery code to make same height
$(document).ready(function(){
var heightBox = 0;
$('.thumb-accommodation__content').each(function(){
if($(this).height()>heightBox){
heightBox=$(this).height();
}
});
$('.thumb-accommodation__content').height(heightBox);
});
.row {
display: flex;
display: -ms-flexbox;
display: -webkit-box;
flex-wrap: wrap;
-ms-flex-wrap: wrap;
}
.col-6 {
-webkit-box-flex: 0;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
padding-left: 15px;
padding-right: 15px;
width: 100%;
}
.thumb-accommodation {
height: 100%;
}
.thumb-accommodation__image {
height: 120px;
background-color: deeppink;
color: white;
padding: 10px;
}
.thumb-accommodation__content {
background-color: aqua;
height: calc(100% - 120px);
padding: 10px;
}
h3 {
margin: 0
}
<div class="row">
<div class="col-6">
<div class="thumb-accommodation">
<div class="thumb-accommodation__image">
<span>image</span>
</div>
<div class="thumb-accommodation__content">
<h3>
A realy realy realy realy realy realy realy realy big Title
</h3>
<p>
Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor....
</p>
</div>
</div>
</div>
<div class="col-6">
<div class="thumb-accommodation">
<div class="thumb-accommodation__image">
<span>image</span>
</div>
<div class="thumb-accommodation__content">
<h3>
Title
</h3>
<p>
Lorem ipsum dolor....
</p>
</div>
</div>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Upvotes: 1
Reputation: 13568
Use display: -webkit-flex;
instead of display: -webkit-box;
and remove flex-wrap: wrap;
.row {
display: flex;
display: -ms-flex;
display: -webkit-flex;
}
.row {
display: flex;
display: -ms-flex;
display: -webkit-flex;
}
.col-6 {
-webkit-flex: 0;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
padding-left: 15px;
padding-right: 15px;
width: 100%;
}
.thumb-accommodation {
height: 100%;
}
.thumb-accommodation__image {
height: 120px;
background-color: deeppink;
color: white;
padding: 10px;
}
.thumb-accommodation__content {
background-color: aqua;
height: calc(100% - 120px);
padding: 10px;
}
h3 {
margin: 0
}
<div class="row">
<div class="col-6">
<div class="thumb-accommodation">
<div class="thumb-accommodation__image">
<span>image</span>
</div>
<div class="thumb-accommodation__content">
<h3>
A realy realy realy realy realy realy realy realy big Title
</h3>
<p>
Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor Lorem ipsum dolor....
</p>
</div>
</div>
</div>
<div class="col-6">
<div class="thumb-accommodation">
<div class="thumb-accommodation__image">
<span>image</span>
</div>
<div class="thumb-accommodation__content">
<h3>
Title
</h3>
<p>
Lorem ipsum dolor....
</p>
</div>
</div>
</div>
</div>
Upvotes: 2