htmlcssflexboxflexboxgrid

CSS Flexbox Center Items with Positioning


I'm trying to position 3 elements in a specific position with flexbox, all while being centered horizontally and vertically.

Like this:

enter image description here

This is what I have so far, what am I doing wrong here?

.container {
  width: 100%;
  max-width: 800px;
  height: auto;
  margin: 0 auto;
  background: pink;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;

  .first 	{ 
    background: green; 
    height: 50px;
    align-self: stretch;
  }

  .second { 
    background: blue; 
    height: 100px;
  }

  .third 	{ 
    background: crimson; 
    height: 100px;
  }
}
<div class="container">
  <div class="first"></div>
  <div class="second"></div>
  <div class="third"></div>
</div>

    

Have a look at this fiddle: https://jsfiddle.net/u21uqs7q/


Solution

  • Just update your code with following snippet..

    .container {
    	width: 100%;
    	max-width: 800px;
    	height: 100vh;
    	margin: 0 auto;
    	background: pink;
    	display: flex;
      align-items: center;
      justify-content: center;
    	
    }
    	.left  .first	{ 
    		background: green; 
    		height: 50px;
    	}
    	
    	.right .second { 
    		background: blue; 
    		height: 100px;
    	}
    	
    	.right .third 	{ 
    		background: crimson; 
    		height: 100px;
    	}
    <div class="container">
    	<div class="left">
      <div class="first">111</div>
      </div>
      
    	<div class="right">
      <div class="second">222</div>
    	<div class="third">333</div>
      </div> 
    </div>