@ArtemKornishon

Как сверстать карточки с градиентным фоном и иконкой?

Взял на верстку в качестве пет-проекта макет.
В одном блоке стоит задача сверстать вот такие карточки в блоке:
2023-04-10-17-41-46.png
Решил синюю карточку реализовать через ховер. Т.е. по дефолту карточка серая, но при ховере меняет цвет.
Сначала я сделал вот так, но проблема в том, что ховер из градиента просто все перекрывает. Можно вписать иконку в ховер тоже, но тогда для каждой карты потребуется писать отдельный ховер, а хотелось бы обойтись максимально лаконичным решением:


Второе решение стало вот таким, но тут проблема в том, что все картинки разные по размеру и их сложно спозиционировать. К тому же они через тег img не плотно прилегают к краям родителя как в макете:


Хотелось бы получить подсказку опытных ребят как лучше и проще реализовать такую карточку. Тут сложность в градиенте, который я прописывал через css + иконки на кажду карточку. Как обычно поступаете? Релевантно будет скопировать иконку и градиентную заливку одним фоном из фигмы и вставить через background? Решение вроде простое, но на сколько будет корректно?
  • Вопрос задан
  • 83 просмотра
Решения вопроса 1
@HARDOOPS
I. Надеюсь, что фон изменить через linear-gradient() не проблема.
II. Иконки оформляем в SVG.
III. Задаëм SVG fill="currentColor" и меняем цвет (color) при :hover на родительском элементе.

Итого:
<div class="card"><!-- На этом :hover -->
    <div class="text"><!-- Текст с карточки --></div>
    <svg fill="currentColor" ...>...</svg>
</div>
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
IMHO, отрисовать все картинки в SVG одного размера. Тогда и позиционирование будет одинаковое, и по hover можно будет цвет заливки/контура SVG менять.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы