Источники вдохновения для интерьеров: подборка интерьеров с использованием натуральных материалов на Неделе дизайна

От регенерированного дерева до камня и меди — в некоторых проектах этого месяца используются природные материалы, чтобы стирать границы между внутренним и внешним помещением. Автор Молли Лонг 16 ноября 2021 г. 15:32 16 ноября 2021 г. 15:32 1 Отель Торонто, Rockwell Group Фото: Брэндон Барре У самого Touting есть первый в Канаде «ориентированный на миссию…

25 эффективных заголовков героев веб-сайтов с использованием векторных иллюстраций

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

Создайте свое резюме с использованием Markdown

Легко отформатируйте свое резюме

Используйте команды / (косая черта) или Markdown чтобы быстро структурировать контент, перечислить достижения и выделить навыки.
Отбросьте свои мысли, систематизируйте и форматируйте контент, не беспокоясь о дизайне.

Создание карусели с использованием CSS Scroll Snap и JavaScript

Этот учебник поможет вам создать адаптивную карусель, используя свойство CSS scroll-snap и очень мало JavaScript для навигации. Вы можете использовать его для демонстрации продуктов, в качестве галереи или для своих отзывов — как в примере в этом руководстве. Итак, вот что мы будем создавать:

 пример карусели "width =" 600 "height =" 327 "class =" alignnone size-full wp-image-155301 "/> </p>
<p> На самом деле это просто горизонтальная секция прокрутки, но когда вы прокручиваете ее, она «щелкает» (автоматически регулирует положение контейнера прокрутки), чтобы обеспечить отображение всего элемента, заставляя его вести себя как карусель. Вы также можете использовать стрелки для отображения следующего и предыдущего элементов, для чего требуется JavaScript. Чтобы продолжить, вам необходимо иметь базовые знания HTML, CSS и JavaScript. По пути вы узнаете о свойствах привязки прокрутки CSS. Приступим. </p>
<div class=

Миллионы шрифтов, тем и графики: ТОЛЬКО от 16,50 долларов США в месяц

 Веб-шрифты "width =" 250 "height =" 166 "/>
</div>
<div class=  WordPress шаблоны "width =" 250 "height =" 166 "/> 

<div class=

WordPress темы

1200+ тем

 Графические ресурсы "width =" 250 "height =" 166 "/> 

<div class=

Графические ресурсы

32 000+ изображений

СКАЧАТЬ

 Envato Elements "width =" 119 "height =" 13 "/> </div>
</div>
<p></a>
</div>
<p> <img style=

Создание

Создайте пустой HTML-документ и назовите его index.html . Добавьте базовый скелет HTML. Если вы используете Visual Studio Code, все, что вам нужно сделать, это ввести «!» и нажмите Enter. У вас получится вот это.

 


   
   
    Документ 


  


В этой демонстрации используется шрифт «Noto Sans». Давайте встроим этот шрифт из Google Fonts. Добавьте эту ссылку CDN под тегом заголовка, чтобы встроить обычный и курсивный стили этого шрифта.

 

Создайте свою таблицу стилей и назовите ее style.css . Свяжите таблицу стилей со своим HTML-документом под ссылкой Google fonts CDN, используя

 

Я загрузил три портретных изображения с Pexels и обрезал их квадратной формы для этой демонстрации. Вы можете добавить свой собственный. Назовите их testimonial1.jpg testimonial2.jpg и testimonial3.jpg .

Создание простого скроллера

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

HTML

Добавьте эту разметку в тег тела в свой HTML-файл:

 
Пункт 1
Пункт 2
Пункт 3

Здесь div отзывов действует как оболочка, внутри которой находится горизонтальный скроллер а затем три элемента div .

CSS

В style.css начните с некоторых общих стилей для всех элементов:

 * {
   маржа: 0;
   отступ: 0;
   размер коробки: рамка-рамка;
}

Добавьте эти стили к элементу body :

 body {
   семейство шрифтов: «Noto Sans», без засечек;
   размер шрифта: 1em;
   цвет: # 4A5568;
}

Ограничьте ширину обертки отзывов примерно до 800 пикселей и отцентрируйте ее.

 .testimonials {
   максимальная ширина: 800 пикселей;
   маржа: авто;
}

Добавьте эти базовые стили, чтобы увидеть, как работает скроллер.

 .scroller {
   переполнение-x: прокрутка;
   дисплей: гибкий;
}
.пункт {
   минимальная ширина: 100%;
   минимальная высота: 200 пикселей; /* Начать с */
   цвет фона: # EDF2F7; / * Для демонстрации * /
}

Здесь вы можете увидеть такую ​​секцию горизонтальной прокрутки.

 начало карусели - горизонтальная секция прокрутки "width =" 1024 "height =" 266 "class =" alignnone size-large wp-image-155303 "/> </p>
<h3> Привязка прокрутки </h3>
<p> С помощью привязки прокрутки CSS можно принудительно установить положение прокрутки (плавное перемещение в принудительное положение), как только пользователь прекращает прокрутку. Это работает за счет применения двух основных свойств — <code> scroll-snap-type </code> и <code> scroll-snap-align </code>. </p>
<p> Свойство <strong> scroll-snap-type </strong> применяется к родительскому контейнеру <strong> </strong> (в нашем случае это div <code> scroller </code>). Он принимает два аргумента — направление привязки (<code> x | y | both </code>) и поведение привязки (<code> обязательное | близость </code>). Нам нужно использовать <code> x </code> для направления, потому что мы прокручиваем горизонтально. Для поведения <code> обязательный </code> означает, что браузер должен привязаться к позиции, в то время как <code> близость </code> менее строгий. Мы будем использовать <code> обязательный </code>. </p>
<p> Свойство <strong> scroll-snap-align </strong> применяется к дочерним элементам. Он определяет точку привязки. Требуется один или два аргумента для направления <code> x </code> или / и <code> y </code> (<code> none | start | end | center </code>). В нашем случае это свойство может иметь любое значение, кроме <code> none </code>потому что наши элементы составляют 100% ширины родительского контейнера. Вы можете подробнее ознакомиться с концепцией CSS Scroll Snap здесь. </p>
<p> Добавьте эти свойства в divs </code> scroller </code> и <code> item </code>. </p>
<pre class= .scroller { / * Здесь существующие стили * / scroll-snap-type: x обязательный; } .пункт { / * Здесь существующие стили * / прокрутка-привязка-выравнивание: центр; }

Это все, что вам нужно для волшебства! Теперь проверьте свой браузер и прокрутите его по горизонтали. Вы заметите, что браузер строго привязывается к отображению всего элемента, как только вы в любой момент прекратите прокрутку. Таким образом достигается основное поведение карусели.

Добавление содержания

Давайте добавим содержание к элементам.

HTML

 
 Элиз

Eu rebum molestie per. Нет nostrud imperdiet abhorreant qui, hinc incorrupte vix ad. Vel id aliquip oblique. Primis feugait сидеть, грубый илуд удобный дуэт шт. Graece tempor eripuit sed в.

Элиз
 Джон

Vitae pericula maluisset ut mei, pro eleifend gubergren eu. Et his brute graeci. Affert ponderum ei vel, dolorum accumsan ea имеет. Sea oblique salutatus ei, simul lucilius pri et. Errem melius temporibus ut eos

Джон
 Imani

Ne est virtute indexum, quaeque vituperata cum ut. Te nisl quaeque pri. Vix ex autem latine, mel ne nobis scaevola, ei est dolor utinam commune. Pri unum doctus in, cu primis pertinax eos.

Imani

CSS

Пора его украсить.

 .testimonials {
   / * Здесь существующие стили * /
   отступ: 15 пикселей;
   выравнивание текста: центр;
}
.пункт {
   / * Здесь существующие стили * /
   цвет фона: белый; / * Измените значение на белый * /
   нижнее поле: 10 пикселей;
   отступ: 0 50 пикселей;
}
.item img {
   маржа: 15 пикселей авто-60 пикселей;
   ширина: 120 пикселей;
   высота: 120 пикселей;
   граница: сплошная 4px #ffffff;
   радиус границы: 60 пикселей;
   box-shadow: 0 4px 6px -1px rgba (0, 0, 0, 0,1);
   z-индекс: 2;
}
.открытка {
   цвет фона: rgb (237, 242, 247);
   отступ: 80 пикселей 40 пикселей 40 пикселей;
   радиус границы: 10 пикселей;
   box-shadow: 0 4px 6px -1px rgba (0, 0, 0, 0,1);
   z-индекс: 1;
}
.card p {
   стиль шрифта: курсив;
   высота строки: 1,6;
}
.card span {
   дисплей: блок;
   маржа сверху: 20 пикселей;
   цвет: бирюзовый;
   font-weight: жирный;
   межбуквенный интервал: 0,05 мкм;
   преобразование текста: прописные буквы;
}

Наша карусель обрела форму. Единственное, что пока не решено, — это функция навигации.

Добавление навигации

В этой демонстрации я добавил простые стрелки с символами и > для кнопок навигации. Вы также можете использовать значки или изображения.

HTML

Добавьте эти две строки сразу после div scroller но внутри рекомендательного div :

  & Lt; 
 & триазол 

CSS

Добавьте в свою таблицу стилей для размещения и оформления кнопок навигации:

 .testimonials {
   / * Здесь существующие стили * /
   положение: относительное;
}
.testimonials .btn {
   позиция: абсолютная;
   верх: 50%;
   маржа сверху: 20 пикселей;
   высота: 30 пикселей;
   ширина: 30 пикселей;
   радиус границы: 15 пикселей;
   цвет фона: rgba (95, 106, 117, 0,3);
   z-индекс: 1;
   высота строки: 30 пикселей;
   выравнивание текста: центр;
   цвет белый;
   font-weight: жирный;
}
.testimonials .btn: hover {
   цвет фона: rgba (95, 106, 117, 0,5);
   курсор: указатель;
}
.testimonials .btn.next {
   справа: 15 пикселей;
}
.testimonials .btn.prev {
   слева: 15 пикселей;
}

JavaScript

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

 

В приведенном выше коде мы добавили обработчики событий click к кнопкам prev и next . Функциональность перехода к предыдущему или следующему элементу достигается с помощью метода scrollBy . Ознакомьтесь с синтаксисом и примерами метода element.scrollBy .

Вариант поведения : «гладкий» дает эффект плавного скольжения. Обратите внимание, что этот эффект не поддерживается в IE 11 и некоторых более старых версиях других браузеров.

Создание цикла

При желании вы можете сделать этот цикл карусели — нажатие кнопки «Далее» для последнего элемента заставляет карусель начинаться с начала и аналогичное поведение для кнопки «предыдущая», изменив методы в сценарии на следующие:

 function scrollToNextItem () {
   если (scroller.scrollLeft <(scroller.scrollWidth - itemWidth))
       // Позиция прокрутки не в начале последнего элемента
       scroller.scrollBy ({left: itemWidth, вверху: 0, поведение: 'гладкое'});
   еще
       // Достигнут последний элемент. Вернитесь к первому элементу, установив положение прокрутки на 0
       scroller.scrollTo ({слева: 0, сверху: 0, поведение: «гладко»});
}
function scrollToPrevItem () {
   если (scroller.scrollLeft! = 0)
       // Позиция прокрутки не в начале первого элемента
       scroller.scrollBy ({left: -itemWidth, верх: 0, поведение: 'гладкий'});
   еще
       // Это первый элемент. Перейти к последнему элементу, установив положение прокрутки на ширину скроллера
       scroller.scrollTo ({left: scroller.scrollWidth, вверху: 0, поведение: 'гладкое'});
}

Делаем его полностью адаптивным

То, что у нас есть сейчас, уже реагирует. За исключением того, что для ширины браузера меньше 480 пикселей карта становится слишком узкой и длинной. Итак, давайте уменьшим отступ для элемента и карточки для этой ширины с помощью медиа-запросов.

Добавьте это в свою таблицу стилей:

@media screen и (max-width: 480px) {
.item {
padding: 0 30px;
}
.card {
padding: 80px 30px 30px;
]}
}

Вот оно! Вы успешно создали адаптивную карусель для раздела отзывов с наименьшим количеством JavaScript, а также узнали о новых свойствах scroll-snap в CSS. Вы можете изменить эту карусель в соответствии со своими потребностями. Попробуйте использовать эту карусель для изображений различной ширины и посмотрите, как она себя ведет.

Здесь вы можете скачать полный исходный код.

Загрузить исходный код

Это сообщение может содержать партнерские ссылки. Смотрите наше раскрытие партнерских ссылок здесь .

Как создать приложение Vue Survey с использованием аутентификации и базы данных Firebase — Smashing Magazine

Об авторе Дэвид в настоящее время пишет код внешнего интерфейса для канарейки. com, и постоянно работает над тем, чтобы сделать Интернет более доступным для всех. Интересы помимо кодирования включают… Подробнее о Дэвид … Это руководство поможет вам создать пошаговое руководство по созданию приложения для функционального опроса с использованием Vue.js и Firebase. От проверки данных пользователя…

Как создать процедурные облака с использованием спрайтов Three.js

От нашего спонсора: Рынок умнее с инструментами автоматизированного обмена сообщениями Mailchimp. Сегодня мы собираемся создать анимированное облако с использованием пользовательского материала шейдера, расширяя встроенный материал Sprite Three.js. Предположим, что вы знакомы с React (включая крючки), Three.js и React-Three-Fiber. Если нет, вы можете найти эту статью, которую я написал как введение для начинающих в библиотеку, полезной…

Плюсы и минусы создания сайтов с использованием сторонних продуктов

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

Создание многократно используемых компонентов с использованием React

             Что такое компоненты многократного использования? Создание многократно используемого компонента React Интеграция компонентов React с ButterCMS Заключение React — одна из самых популярных библиотек JavaScript для создания пользовательских интерфейсов. Чтобы создать приложение с использованием React, вам просто нужно создать инкапсулированные компоненты, которые могут содержать свое собственное состояние. Ваше приложение должно быть набором компонентов React, которые…

Adobe представляет Recolor для Illustrator — мгновенно меняйте иллюстрацию с использованием реальных тонов — Функции

Как было показано в OFFF Barcelona только сегодня днем, новый инструмент Adobe для Illustrator позволяет извлекать цвета из фотографии и перекрашивать ваши векторы мгновенно. Когда-нибудь влюблялись в цвет и фотографировали его как вдохновение для своей работы? Применение этого цвета к векторной иллюстрации может быть проблемой, но не намного дольше благодаря новой захватывающей новой работе, проводимой…