Rendi i blloqeve flex në CSS

Le të themi se kemi blloqet e mëposhtme, të rreshtuara në një rresht:

html<div class="parent">
  <div class="child">1</div>
  <div class="child">2</div>
  <div class="child">3</div>
  <div class="child">4</div>
  <div class="child">5</div>
</div>
css.parent {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 300px;
  height: 200px;
  border: 1px solid red;
}
.child {
  width: 50px;
  height: 50px;
  border: 1px solid green;
}

Результат:

Le të ndryshojmë rendin e shfaqjes së tyre në ekran, pa ndryshuar rendin e tyre në kodin HTML.

Për këtë ekziston vetia order, e cila cakton rendin e ndjekjes së elementeve specifike sipas rregullit të mëposhtëm: ai që ka vlerë më të madhe, qëndron më afër fundit të boshtit, ndërsa ai që ka vlerë më të vogël - qëndron më afër fillimit.

Si vlerë, vetia mund të pranojë numër pozitiv ose negativ. Si parazgjedhje, të gjithë elementet ndjekin njëri-tjetrin, kjo do të thotë se order për ta është zero.

Le të ndryshojmë rendin e elementeve tanë. Për këtë, le t'i caktojmë elementit të dytë një klasë shtesë elem dhe për këtë klasë do të caktojmë vetinë order në vlerën 1:

css.elem {
  order: 1;
  border: 1px solid red;
}

Meqenëse të gjithë elementet si parazgjedhje do të kenë rend 0, ndërsa elementi ynë i dytë do të ketë rend më të madh se të tjerët, atëherë ai do të vendoset pas tyre:

Tani le të caktojmë vlerën negative -1:

css.elem {
  order: -1;
  border: 1px solid red;
}

Në këtë rast, blloku ynë do të zhvendoset në fillim të boshtit:

Задание 1

Provoni vetë funksionimin e kësaj vetie për drejtime të ndryshme të boshtit.