Подравняне на отделен елемент във flex модела в CSS

Следващите свойства, които ще изучим, се задават не на родителя на флекс-елементите, а на самите елементи. Нека разгледаме свойството align-self, което подравнява отделен блок по напречната ос.

Нека имаме флекс-блокове, подредени в ред. Ще ги подравним по центъра вертикално, като зададем align-items със стойност center, а на втория елемент ще дадем допълнителен клас elem и за него ще зададем различно подравняване, например ще го притиснем към горния ръб.

За това на нашия елемент с клас elem ще зададем свойството align-self със стойност flex-start:

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

Результат:

Задание 1

Повторете страницата по дадения образец:

Задание 2

Повторете страницата по дадения образец:

Задание 3

Повторете страницата по дадения образец: