12 пейзажных сцен, полностью созданных с помощью CSS и SVG

Опубликовано: 2021-01-26

Вы можете делать довольно сумасшедшие вещи с SVG. Разработчики могут кодировать графику на странице без каких-либо файлов изображений, просто используя функцию SVG и холста.

Это приводит к действительно крутым проектам, таким как пейзажи в чистом SVG, которые я собрал здесь.

Все эти проекты абсолютно бесплатны для редактирования и использования. Они работают с кодом SVG вместе с некоторыми базовыми CSS и JS для создания анимации, искажений и эффектов параллакса.

Хокс-Бей

Этот пример красивого пейзажа бухты был разработан Луи Койлом. Он следует полистильному виду, имитирующему полигональное отображение, обычно встречающееся в 3D-рендеринге.

Это популярный эффект в SVG и JavaScript, но реализовать его, безусловно, непросто.

Луи использует библиотеку TweenMax для создания анимаций, элегантных как по стилю, так и по коду.

Если вы когда-нибудь хотели покопаться в необработанном SVG-коде, из этого фрагмента можно многому научиться.

Низкополигональная Пейзаж

Вот еще один пейзаж, созданный по образцу низкополигональной модели.

Этот создан разработчиком Люком Ридом и уделяет гораздо больше внимания 3D-эффектам. Весь макет кажется очень реальным, а градиент неба, усыпанный звездами, вдыхает жизнь в этот дизайн.

Если вы посмотрите на код JavaScript, вы увидите, что позиции звезд генерируются случайным образом. Это классный эффект, если вы когда-либо проектировали фон SVG или стиль заголовка героя.

Пейзажная анимация SVG

Эван Уинстон разработал эту пользовательскую анимацию, которая медленно отображает все видимые элементы.

Это довольно крутой эффект, и его может создать каждый. Конечно, это может быть не так полезно, как огромная фоновая иллюстрация, в основном из-за времени, необходимого для завершения анимации.

Но вы можете сделать что-то подобное с пользовательскими значками SVG на веб-сайте. Существует множество руководств, которые помогут вам спроектировать базовые SVG, а затем анимировать их с помощью кода из приведенного выше фрагмента (также работающего на TweenMax).

Морской пейзаж

Для базового вида на берегу озера я действительно копаю этот фрагмент SVG. Он содержит несколько основных анимаций страниц, таких как волны на воде и облака на заднем плане.

Все это довольно легко сделать с небольшим количеством JavaScript. Но вы заметите, что этот фрагмент сделан с использованием чистого css , что делает его еще более впечатляющим!

Современная анимация CSS3 наиболее полезна на веб-сайтах с анимацией UI/UX, но вы также можете использовать ее для пейзажей или иллюстраций. Это половина удовольствия быть разработчиком.

Зимний пейзаж

Этот зимний пейзаж напоминает о хрустящем белом снегу, который мы видим каждый год.

Андрей Сорокин создал эту базовую анимацию, используя только код SVG и немного JavaScript. Анимация может быть медленной, поэтому вам, возможно, придется подождать минуту, чтобы увидеть полный эффект.

Я больше всего впечатлен качеством эффектов плавности и тем, насколько хорошо они работают в браузере.

Основываясь на том, сколько элементов анимируется в поле зрения, я бы предположил некоторую медлительность, но он загружается невероятно быстро, учитывая, сколько всего происходит.

Не говоря уже о том, что анимация солнца, выходящего из-за дерева, просто восхитительна.

SVG-сценарий

Мы наблюдаем массовый рост тенденций плоского дизайна и полуплоских дизайнов, в которых используются базовые цвета без градиентов.

Этот фрагмент следует тому же стилю с резкими краями для теней и углов.

Это красивый фрагмент и, безусловно, один из самых простых в работе ландшафтов только для SVG. Даже если вы никогда раньше не использовали SVG-код, этот фрагмент предлагает много интересного и множество атрибутов SVG/XML, которые вы можете найти в Google, чтобы узнать больше.

Природный ландшафт

Разработчик Амр Закария создал аналогичный плоский дизайн с этим пейзажем, используя анимированные лодки и самолеты, чтобы привлечь ваше внимание.

Все это работает на чистом CSS и работает с довольно четкой анимацией ключевых кадров CSS.

Все это можно воспроизвести для фона на веб-странице, если у вас хватит терпения заставить его работать. Самое сложное — сделать так, чтобы это полностью адаптировалось к экранам мобильных устройств.

Параллаксные огни

Из всех эффектов параллакса в Интернете этот самый простой. Однако это также весьма впечатляет, так как все работает только на CSS , никаких сценариев не требуется.

Все элементы, включая уличные фонари, разработаны с использованием форм SVG и эффектов CSS.

Если вы посмотрите очень внимательно, то заметите, что лампы на самом деле используют эффект тени CSS для создания реалистичного свечения.

Основные анимации

В этом обновленном ландшафте SVG вы найдете множество настраиваемых элементов, которые бросаются в глаза.

Создатель Стеф ван Дейк уделяет особое внимание каждой анимации, добавляя к каждой части эффекты подпрыгивания и гравитации. Например, когда в поле зрения появляются горы, вы заметите эффект отскока от земли.

Это то, что вы получаете, когда уделяете пристальное внимание деталям, и именно поэтому я такой большой поклонник современной веб-анимации.

SVG и CSS

Взгляните на эту ручку, чтобы получить увеличенную фоновую анимацию. Все это работает на SVG и чистом CSS без JavaScript.

Слои ландшафта постепенно появляются в поле зрения, и все они имеют собственную анимацию ключевых кадров. Но как только они появятся в поле зрения, вы заметите, что некоторые элементы продолжают двигаться (например, солнце и облака).

Создание чего-то подобного занимает много времени. Но это также познакомит вас с синтаксисом SVG и основами CSS-анимации.

Трава

Хотя этот ландшафт очень прост, я также думаю, что он станет отличным учителем для новых программистов.

Феликс Де Монтис создал этот проект с нуля с небольшим количеством кода SVG для травы, холмов и деревьев. Достаточно просто воспроизвести это и изменить позиции с помощью CSS.

В целом, если вам нравятся простые SVG-дизайны, это отличное место для начала. Felix также использует препроцессор LESS, если вы ищете что-то помимо базового CSS.

Страница параллакса

Крис Грубер разработал этот безупречный пейзаж с эффектом параллакса, который движется в зависимости от движений мыши.

Но наряду с этим он также анимировал некоторые элементы страницы, такие как парусник и фоновые облака.

Для всего этого требуется очень мало JavaScript, так как он оперирует менее чем 20 строками jQuery. Тем более впечатляет, учитывая, насколько это подробно.