Значки на карточках
Оскар только что поступил в приют, поэтому мы повесили на его карточку значок «Новый»: элемент span над картинкой. Пока он занимает отдельную строку. А нам хочется, чтобы он был в левом верхнем углу карточки, поверх картинки.
У свойства position для каждого значения есть класс, названный по значению: static, relative, absolute, fixed и sticky. У смещений top, right, bottom и left классы с числами шкалы отступов:
| Класс | CSS |
|---|---|
top-3 | top: 0.75rem; (12 px) |
left-3 | left: 0.75rem; (12 px) |
right-0 | right: 0; |
-top-2 | top: -0.5rem; (минус перед классом делает значение отрицательным) |
inset-0 | top: 0; right: 0; bottom: 0; left: 0; |
absolute inset-0 растягивает элемент на весь его предок с заданным позиционированием. Это удобно, например, для полупрозрачного слоя поверх картинки.
И вспомните приём из курса CSS: смещения абсолютно позиционированного элемента отсчитываются от ближайшего предка, у которого позиционирование отлично от static. Поэтому карточке понадобится класс relative.
Задание
- 1
Добавьте значку классы
absolute top-3 left-3. Он прыгнет в левый верхний угол страницы, поверх логотипа: ни у одного из его предков не задано позиционирование, поэтому смещения отсчитываются от страницы. - 2
Добавьте карточке Оскара (элементу
article) классrelative. Значок переместится в угол карточки, на 12 px от её верхнего и левого краёв: теперь карточка — его ближайший предок с заданным позиционированием.