Search code examples
cssflexboxalignmentdirection

Align items to left while flex direction is row-reverse in Flex


I want to display items in reverse order horizontally with left alignment

here is my working fiddle, but items are aligned to right.

#main {
    width: 400px;
    height: 400px;
    border: 1px solid #c3c3c3;
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-start;
}

#main div {
    width: 50px;
    height: 50px;
}
<div id="main">
  <div style="background-color:coral;">A</div>
  <div style="background-color:lightblue;">B</div>
  <div style="background-color:khaki;">C</div>
  <div style="background-color:pink;">D</div>
  <div style="background-color:lightgrey;">E</div>
  <div style="background-color:lightgreen;">F</div>
</div>

can someone help me, thanks in advance.


Solution

  • You need to specify justify-content: flex-end;

    #main {
      width: 400px;
      height: 400px;
      border: 1px solid #c3c3c3;
      display: flex;
      flex-direction: row-reverse;
      align-items: flex-start;
      justify-content: flex-end;
    }
    
    #main div {
      width: 50px;
      height: 50px;
    }
    <div id="main">
      <div style="background-color:coral;">A</div>
      <div style="background-color:lightblue;">B</div>
      <div style="background-color:khaki;">C</div>
      <div style="background-color:pink;">D</div>
      <div style="background-color:lightgrey;">E</div>
      <div style="background-color:lightgreen;">F</div>
    </div>