Да, это возможно
Проверьте ниже пример.
Я использую медиазапрос CSS @media(max-width:768px)
, чтобы проверить, меньше ли ширина экрана, чем 768 пикселей (может быть любое значение меньше этого).
В зависимости от этого я устанавливаю направление гибких дочерних элементов на column
, чтобы дочерние элементы могли складываться друг на друга.
Наряду с этим на мобильном экране я также настраиваю отображение внутренних контейнеров (класс .sec
) для изгиба,
<div class="sec">
<div class="img">Image</div>
<div class="text">
Text
</div>
</div>
Так что его дети выровняются в ряду.
.container {
display: flex;
flex-direction: row;/* default value*/
}
.text,.img{
padding:10px;
}
.sec {
flex: 1;
background-color: wheat;
padding: 5px;
border: 1px solid black;
text-align: center;
}
@media(max-width:768px) { /* can be anything less than this*/
.container {
flex-direction: column;
}
.sec {
display: flex;
flex-direction: row;/* default value*/
}
}
<div class="container">
<div class="sec">
<div class="img">Image</div>
<div class="text">
Text
</div>
</div>
<div class="sec">
<div class="img">Image</div>
<div class="text">
Text
</div>
</div> <div class="sec">
<div class="img">Image</div>
<div class="text">
Text
</div>
</div> <div class="sec">
<div class="img">Image</div>
<div class="text">
Text
</div>
</div> <div class="sec">
<div class="img">Image</div>
<div class="text">
Text
</div>
</div> <div class="sec">
<div class="img">Image</div>
<div class="text">
Text
</div>
</div> <div class="sec">
<div class="img">Image</div>
<div class="text">
Text
</div>
</div>
</div>