I have a parent div element containing several children. The parent div is contained inside an outer container div. I want the parent div to be centered inside the container but the problem is that the parent uses flex-wrap: wrap to wrap all of its child divs.
The parent div is centered in the container as expected:
#container {
  width: 500px;
  display: flex;
  justify-content: center;
  background-color: #c0faff; 
}
#parent {
 display: flex;
 flex-wrap: wrap;
}
.child {
 background-color: #5bb4bb;
 width: 100px;
 height: 100px;
 margin: 5px;
}
<div id="container">
  <div id="parent">
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
  </div>
</div>
But, as soon as there is 1 child that must be wrapped onto the 2nd row, the parent div floats to the left and ignores the container's justify-content: center; css property:
#container {
  width: 500px;
  display: flex;
  justify-content: center;
  background-color: #c0faff; 
}
#parent {
 display: flex;
 flex-wrap: wrap;
}
.child {
 background-color: #5bb4bb;
 width: 100px;
 height: 100px;
 margin: 5px;
}
<div id="container">
  <div id="parent">
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
  </div>
</div>
How can I make the previous code snippet's result look like this?:
