I am a backend programmer by profession. But I have just started to learn flexbox and I want to hit the sky with flexbox.
So, I created a simplest design but which looks most complicated to me when creating it using flexbox.
Here is the design:
Guys, I am not able to figure out, how to use flexbox in such a case as there is no row or column. I don't know but is there anything like rowspan or colspan in flexbox that I can use to arrange these divs as shown in image above?
Here is my code:
HTML:
<div class="wrapper">
  <div class="div-wrapper1">
    <div class="inner-wrapper1">
      <div class="div1"></div>
      <div class="fake1"></div>
    </div>
    <div class="div2"></div>
  </div>  
  <div class="div-wrapper2">
    <div class="div3"></div>
    <div class="inner-wrapper2">
      <div class="fake2"></div>
      <div class="div4"></div>
    </div>
  </div>
  <div class="div-center"></div>
</div>
CSS:
.wrapper {
  height: 200px;
  width: 200px;
  border: 1px solid black;
  display: flex;
  flex-direction: column;
}
.div-wrapper1 {
  display: flex;
  flex: 1;
}
.div-wrapper2 {
  display: flex;
  flex: 1
}
.inner-wrapper1 {
  display: flex;
  flex: 3;
  flex-direction: column; 
}
.div1 {
  background-color: red;
  display: flex;
  flex: 3
}
.fake1 { 
  display: flex;
  flex: 1
}
.div2 {
  background-color: green;
  display: flex;
  flex: 2
}
.div3 {
  background-color: blue;
  display: flex;
  flex: 2
}
.inner-wrapper2 {
  display: flex;
  flex: 3;
  flex-direction: column; 
}
.div4 {
  background-color: yellow;
  display: flex;
  flex: 3
}
.fake2 { 
  display: flex;
  flex: 1
}
.div-center {
  background-color: black;
}
This is my output:
Here is the codepen


 
    