Пропорции блоков на css. Есть ли современное решение?

На дворе уже 2020 год, а для создания блока с заданными пропорциями до сих пор используется padding-top в процентах.
Всё бы ничего, но контент внутри такого блока надо делать с абсолютным позиционированием, а это приносит свои минусы.
Может есть какое-то более современное решение, про которое я не знаю? Может через гриды как-нибудь?

Подробнее, если описание непонятно: например нам надо сделать блок с картинкой, который всегда будет квадратным, вне зависимости от пропорций картинки внутри него. Так же это часто используется для адаптивных оберток видео.
  • Вопрос задан
  • 1679 просмотров
Решения вопроса 2
@Flying
Да, есть свойство aspect-ratio которое потихоньку начинает появляться в современных браузерах. Однако, поигравшись с ним немного - могу сказать что пока что использовать его на практике смысла никакого, придётся подождать пару лет как минимум.

На всякий случай ещё дам ссылку на статью, посвящённую разработке этого свойства.
Ответ написан
Комментировать
Qudenrash
@Qudenrash
Вариант №1 (статический) Блок с картинкой, который всегда будет квадратным, вне зависимости от пропорций картинки внутри него:
https://codepen.io/codeshonpen/pen/Rwrpeap

Вариант №2 ("резиновый"):
https://codepen.io/codeshonpen/pen/LYGWgKL
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
div {
   width: 300px;
   height: 300px;
}

div img {
   width: 100%;
   height: 100%;
   object-fit: cover; #работает так же как и бекграунд
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы