I have 6 blocks in a row like that:
In mobile and desktop version everything works as I want, but when I change flex-direction
from row
to column
:
In the desktop version, everything works well, but on the mobile version, blocks do not arrange 2 in each row, they are in a column. How can I solve that?
CSS:
* {
box-sizing: border-box;
}
img {
width: auto;
max-width: 100%;
height: auto;
max-height: 100%;
}
.picture-box {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-between;
padding: 3rem 1.5rem;
}
.ring {
flex: 0 0 calc(50% - 10px);
padding: 20px;
margin-bottom: 20px;
border: 1px solid green;
text-align: center;
}
.thumb {
display: inline-block;
max-width: 200px;
padding: 10px;
border: 1px solid blue;
}
@media all and (min-width: 1024px) {
.ring {
flex: 0 0 calc((100% / 3) - (40px / 3))
}
}
@media all and (min-width: 1240px) {
.ring {
flex: 0 0 calc((100% / 6) - (100px / 6))
}
}
HTML:
<div class="picture-box">
<div class="ring">
<div class="thumb">
<img src="https://via.placeholder.com/200">
</div>
</div>
<div class="ring">
<div class="thumb">
<img src="https://via.placeholder.com/200">
</div>
</div>
<div class="ring">
<div class="thumb">
<img src="https://via.placeholder.com/200">
</div>
</div>
<div class="ring">
<div class="thumb">
<img src="https://via.placeholder.com/200">
</div>
</div>
<div class="ring">
<div class="thumb">
<img src="https://via.placeholder.com/200">
</div>
</div>
<div class="ring">
<div class="thumb">
<img src="https://via.placeholder.com/200">
</div>
</div>
</div>