У меня есть ситуация, в которой, я думаю, вы бы назвали основную область и боковую область (не общую боковую панель с несвязанным содержимым), например:
![enter image description here](https://i.stack.imgur.com/VKTmR.jpg)
Именно так оно и отображается на рабочем столе, однако для мобильных устройств было бы идеально, если бы они отображались в соответствии с их числовой значимостью, отображаемой на изображении., 4,2,3.
У меня нет проблем с использованием flex
, но в этом случае я не думаю, что это поможет.
1,4 находятся в одном столбце и 23 в другом;Я знаю, что мог бы поставить 1 и 2 в их собственный ряд, и тогда они, естественно, попали бы друг под друга на мобильном телефоне, но если бы я это сделал, то, очевидно, у 3 был бы огромный блок пустого пространства над ним из-за высоты 1.
CodePen: https://codepen.io/gutterboy/pen/NepJbX
HTML:
<div class="container">
<div class="row">
<div class="content col-sm-8">
<div class="primary part"><span>1</span></div>
<div class="secondary part"><span>4</span></div>
</div>
<div class="sidebar col-sm-4">
<div class="side1 part"><span>2</span></div>
<div class="side2 part"><span>3</span></div>
</div>
</div>
</div>
CSS:
.container {
margin-top: 20px;
}
.row {
border: 4px solid #000;
}
.part {
position: relative;
background-color: gray;
font-size: 60px;
font-weight: bold;
&:first-child {
border-bottom: 2px solid #fff;
}
span {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
}
.content {
.primary {
height: 300px;
}
.secondary {
height: 100px;
}
}
.sidebar {
.side1, .side2 {
height: 200px;
}
}
Редактировать:
Я пытался flex
все это хорошо, когда 1 длиннее 2,3 в сочетании:
https://codepen.io/gutterboy/pen/ebvXaO
Однако, если 1 короче , то это становится проблемой, тогда как 4 нене начинается сразу после 1 содержимого.
https://codepen.io/gutterboy/pen/jXBJRd
Есть ли способ сделать то, что я хочу достичь здесь?