<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Веб студия HashWeb</title>
	<atom:link href="https://hashweb.ru/feed/" rel="self" type="application/rss+xml" />
	<link>https://hashweb.ru</link>
	<description>Профессиональная веб студия</description>
	<lastBuildDate>Thu, 07 May 2020 12:28:19 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.8.3</generator>

<image>
	<url>https://hashweb.ru/wp-content/uploads/2020/03/favicon-hashweb.svg</url>
	<title>Веб студия HashWeb</title>
	<link>https://hashweb.ru</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Знакомимся с легкой и мощной Alpine.js</title>
		<link>https://hashweb.ru/blog/znakomimsya-s-legkoj-i-moshhnoj-alpine-js/</link>
					<comments>https://hashweb.ru/blog/znakomimsya-s-legkoj-i-moshhnoj-alpine-js/#respond</comments>
		
		<dc:creator><![CDATA[3eVVBKKC]]></dc:creator>
		<pubDate>Thu, 07 May 2020 12:21:32 +0000</pubDate>
				<category><![CDATA[Наши последние статьи]]></category>
		<guid isPermaLink="false">https://hashweb.ru/?p=291</guid>

					<description><![CDATA[<p>Сегодня мы познакомимся с Alpine.js. У многих разработчиков существует плохая тенденция чрезмерно усложнять рабочий процесс, особенно если на горизонте появилось что-то новое. Зачем использовать CSS, когда вы можете использовать CSS-in-JS? Зачем использовать Grunt, если вы можете использовать Gulp? Зачем использовать Gulp, когда вы можете использовать Webpack? Зачем использовать традиционную CMS, когда вы можете сделать все [&#8230;]</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/znakomimsya-s-legkoj-i-moshhnoj-alpine-js/">Знакомимся с легкой и мощной Alpine.js</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Сегодня мы познакомимся с <strong>Alpine.js</strong>. У многих разработчиков существует плохая тенденция чрезмерно усложнять рабочий процесс, особенно если на горизонте появилось что-то новое. Зачем использовать CSS, когда вы можете использовать CSS-in-JS? Зачем использовать Grunt, если вы можете использовать Gulp? Зачем использовать Gulp, когда вы можете использовать Webpack? Зачем использовать традиционную CMS, когда вы можете сделать все с нуля? Время от времени, однако, новая горячность делает жизнь проще.</p>



<p>В последнее время рост числа утилитарных инструментов, таких как Tailwind CSS, сделал это для CSS, а теперь <strong>Alpine.js</strong> обещает нечто подобное для JavaScript.</p>



<p>В этой статье мы подробнее рассмотрим <strong>Alpine.js</strong> (<a rel="noreferrer noopener" href="https://github.com/alpinejs/alpine" target="_blank">Github</a>) и то, как он может заменить JQuery или более крупные библиотеки JavaScript для создания интерактивных веб-сайтов. Если вы регулярно создаете сайты, которые требуют добавления Javascript для изменения пользовательского интерфейса в зависимости от взаимодействия с пользователем, то эта статья для вас.</p>



<p>На протяжении всей статьи мы будем ссылаться на Vue.js, но не стоит переживать, если у вас нет опыта работы с Vue — он не потребуется. Фактически, часть того, что делает <strong>Alpine.js</strong> таким впечатляющим, заключается в том, что вам вообще не нужно знать JavaScript.</p>



<p>Теперь давайте начнем.</p>



<h3>Что Такое Alpine.Js?</h3>



<p>По словам автора проекта Caleb Porzio:</p>



<blockquote class="wp-block-quote"><p>«<strong>Alpine.js</strong> предлагает вам реактивный и декларативный характер больших фреймворков, таких как Vue или React, за гораздо меньшую «стоимость».</p></blockquote>



<p>Давайте рассмотрим базовый шаблон пользовательского интерфейса, такой как <em>вкладки</em>. Наша конечная цель заключается в том, чтобы, когда пользователь нажимает на вкладку, отображается ее содержимое. В PHP такое легко реализуется, но тогда придется перезагружать всю страницу, что, согласитесь, не очень хорошо.</p>



<p>Со течением времени появились такие замечательные вещи, как jQuery и Bootstrap. В этой ситуации мы создаем прослушиватель событий на вкладке, и когда пользователь щелкает, происходит событие, а мы сообщаем браузеру, что делать.</p>



<p class="codepen" data-height="265" data-theme-id="light" data-default-tab="result" data-user="federro" data-slug-hash="VwvQNPq" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="VwvQNPq">
  <span>See the Pen <a href="https://codepen.io/federro/pen/VwvQNPq">
  VwvQNPq</a> by Anton (<a href="https://codepen.io/federro">@federro</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://static.codepen.io/assets/embed/ei.js"></script>



<p>Это превосходно работает. Но этот стиль кодирования, когда мы точно сообщаем браузеру, что делать (императивное кодирование), может быть ограничен. Разработчики решили эту проблему, обратившись к таким фреймворкам, как Vue, Angular и React. Они позволяют нам писать более чистый код, используя виртуальный DOM: своего рода зеркало пользовательского интерфейса, хранящегося в памяти браузера. В результате вы «скрываете» элемент DOM (например, вкладку) в одной из этих структур; он не добавляет <code>display:none</code>; атрибут стиля, а вместо этого последний буквально исчезает из «реального» DOM.</p>



<p>Это позволяет нам писать более декларативный код, который будет чище и проще для чтения. Но это может быть ресурсозатратно. Как правило, размер пакета этих фреймворков велик, и для тех, кто пришел из jQuery, кривая обучения кажется невероятно крутой. Особенно, когда все, что вы хотите сделать, это переключать вкладки. И здесь вступает <strong>Alpine.js</strong>.</p>



<p>Как и Vue и React, <strong>Alpine.js</strong> позволяет нам писать декларативный код, но использует «реальный» DOM. И весит он всего лишь 6Кб.</p>



<h3>Когда стоит использовать Alpine.js?</h3>



<p>Мощь <strong>Alpine.js</strong> заключается в простоте манипулирования DOM. Вспомните о тех вещах, которые вы использовали из коробки с Bootstrap – <strong>Alpine.js</strong> отлично подходит для них. Примерами здесь могут быть:</p>



<ul><li>Отображение и скрытие DOM-узлов при определенных условиях,</li><li>Обязательный пользовательский ввод,</li><li>Прослушивание событий и изменение пользовательского интерфейса,</li><li>Добавление классов.</li></ul>



<p>Вы также можете использовать <strong>Alpine.js</strong> для шаблонов, если ваши данные доступны в JSON, но это тема для отдельной статьи.</p>



<p>Если же ваш проект гораздо масштабнее, то стоит присмотреться к Vue, React и Angular.</p>



<p>Синтаксис <strong>Alpine.js</strong> почти полностью перенят у Vue.js. Всего существует 13 директив. Мы рассмотрим большинство из них в следующих примерах.</p>



<h3>Начнем знакомство</h3>



<p>Как во Vue и jQuery, процесс сборки не совершенно необязателен. В отличие от Vue, <strong>Alpine.js</strong> инициализируется сам, поэтому нет необходимости создавать новый экземпляр. Просто загрузите Alpine, и все готово.</p>



<pre class="wp-block-code"><code lang="markup" class="language-markup">&lt;script src="https://cdn.jsdelivr.net/gh/alpinejs/alpine@v1.9.4/dist/alpine.js" defer>&lt;/script></code></pre>



<p>Область действия любого данного компонента объявляется с использованием <code>x-data</code> директивы:</p>



<pre class="wp-block-code"><code lang="markup" class="language-markup">&lt;div x-data="{ foo: 'bar' }">...&lt;/div></code></pre>



<h3>Захват входных данных пользователя</h3>



<p><code>x-model</code> позволяет нам синхронизировать любой входной элемент со значениями, установленными с помощью <code>x-data</code>. В следующем примере мы устанавливаем значение имени в пустую строку (внутри <code>form</code> тега). Используя <code>x-model</code>, мы привязываем это значение к полю ввода. Используя <code>x-text</code>, мы вводим значение в <code>innerText</code> элемент абзаца.</p>



<p class="codepen" data-height="265" data-theme-id="light" data-default-tab="result" data-user="federro" data-slug-hash="GRpQLNb" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="GRpQLNb">
  <span>See the Pen <a href="https://codepen.io/federro/pen/GRpQLNb">
  GRpQLNb</a> by Anton (<a href="https://codepen.io/federro">@federro</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://static.codepen.io/assets/embed/ei.js"></script>



<p>Это подчеркивает ключевые различия <strong>Alpine.js</strong> от jQuery и Vue.js.</p>



<p>Обновление тега абзаца в jQuery потребует от нас прослушивания определенных событий (keyup?), явного определения узла, который мы хотим обновить, и изменений, которые мы хотим внести. Синтаксис Alpine, с другой стороны, просто указывает, что должно произойти. Это то, что подразумевается под декларативным программированием.</p>



<p>Обновление абзаца в Vue, хотя и простое, потребует нового тега script:</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">new Vue({ el: '#app', data: { name: '' } });</code></pre>



<p>Хотя это может не показаться существенным, однако подчеркивает первую крупную выгоду от Alpine. Здесь нет переключения контекста. Все сделано прямо в HTML &#8212; не нужно никакого дополнительного JavaScript.</p>



<h3>События по нажатию, логические атрибуты и переключение классов</h3>



<p>Как и в случае с Vue, <code>:</code> служит сокращением для <code>x-bind</code> (которое связывает атрибуты) и <code>@</code> сокращением для <code>x-on</code> (которое указывает, что Alpine должен прослушивать события).</p>



<p>В следующем примере мы создаем экземпляр нового компонента с помощью <code>x-data</code> и устанавливаем значение по умолчанию, равное <code>show</code> false. Когда кнопка нажата, мы переключаем значение <code>show</code>. Когда это значение равно true, мы даем команду Alpine добавить <code>aria-expanded</code> атрибут.</p>



<p><code>x-bind</code> работает по-разному для классов: мы передаем объект, где ключом является имя класса (<code>active </code>в нашем случае), а значением является логическое выражение (<code>show</code>).</p>



<p class="codepen" data-height="265" data-theme-id="light" data-default-tab="result" data-user="federro" data-slug-hash="gOavywV" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="gOavywV">
  <span>See the Pen <a href="https://codepen.io/federro/pen/gOavywV">
  gOavywV</a> by Anton (<a href="https://codepen.io/federro">@federro</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://static.codepen.io/assets/embed/ei.js"></script>



<h3>Скрытие и показ</h3>



<p>Синтаксис показа и скрытия практически идентичен Vue.</p>



<p class="codepen" data-height="265" data-theme-id="light" data-default-tab="result" data-user="federro" data-slug-hash="vYNdMKb" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="vYNdMKb">
  <span>See the Pen <a href="https://codepen.io/federro/pen/vYNdMKb">
  vYNdMKb</a> by Anton (<a href="https://codepen.io/federro">@federro</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://static.codepen.io/assets/embed/ei.js"></script>



<p>Он установит для данного узла DOM значение <code>display:none</code>. Если вам нужно полностью удалить элемент DOM, то можно использовать <code>x-if</code>. Однако, поскольку <strong>Alpine.js</strong> не использует Virtual DOM, его <code>x-if</code> можно использовать только для <code>&lt;template&gt;&lt;/template&gt;</code> тега, который оборачивает скрываемый элемент.</p>



<h3>Другие свойства</h3>



<p>В дополнение к указанным выше директивам Alpine предоставляет дополнительные функции. Все это будет знакомо тем, кто работает с Vue.js.</p>



<ul><li><code>$el</code> извлекает корневой компонент;</li><li><code>$refs</code> позволяет вам получить элемент DOM;</li><li><code>$nextTick</code> обеспечивает выполнение выражений только после того, как <strong>Alpine.js</strong> выполнит свою задачу;</li><li><code>$event</code> может использоваться для захвата события браузера.</li></ul>



<p class="codepen" data-height="265" data-theme-id="light" data-default-tab="result" data-user="federro" data-slug-hash="qBOxwZK" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="qBOxwZK">
  <span>See the Pen <a href="https://codepen.io/federro/pen/qBOxwZK">
  qBOxwZK</a> by Anton (<a href="https://codepen.io/federro">@federro</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://static.codepen.io/assets/embed/ei.js"></script>



<h3>Давайте создадим что-то полезное с Alpine.js</h3>



<p>Пришло время создать что-то для реального проекта. В интересах краткости мы будем использовать стили Bootstrap, но для всего JavaScript использовать <strong>Alpine.js</strong>. Страница, которую мы создаем, представляет собой простую целевую страницу с контактной формой, отображаемой внутри модального окна, которая отправляется некоторому обработчику формы и отображает приятное сообщение об успехе.</p>



<p>Чтобы это работало, мы могли бы добавить jQuery и Bootstrap.js, но это немного накладные расходы из-за небольшой функциональности. Мы могли бы написать это в Vanilla JS, но для чего? Давайте сделаем так, чтобы это работало с <strong>Alpine.js</strong>.</p>



<p>Сначала давайте установим область и некоторые начальные значения:</p>



<pre class="wp-block-code"><code lang="markup" class="language-markup">&lt;body class="text-center text-white bg-dark h-100 d-flex flex-column" x-data="{ showModal: false, name: '', email: '', success: false }"></code></pre>



<p>Теперь давайте заставим нашу кнопку устанавливать <code>showModal </code>значение true:</p>



<pre class="wp-block-code"><code lang="markup" class="language-markup">&lt;button class="btn btn-lg btn-secondary" @click="showModal = true" >Get in touch&lt;/button></code></pre>



<p>Когда <code>showModal </code>true, нам нужно отобразить модальный компонент и добавить несколько классов:</p>



<pre class="wp-block-code"><code lang="markup" class="language-markup">&lt;div class="modal  fade text-dark" :class="{ 'show d-block': showModal }" x-show="showModal" role="dialog"></code></pre>



<p>Давайте свяжем входные значения с Alpine:</p>



<pre class="wp-block-code"><code lang="markup" class="language-markup">&lt;input type="text" class="form-control" name="name" x-model="name" >
&lt;input type="email" class="form-control" name="email" x-model="email" ></code></pre>



<p>И отключим кнопку «Отправить», пока эти значения не будут заполнены:</p>



<pre class="wp-block-code"><code lang="markup" class="language-markup">&lt;button type="button" class="btn btn-primary" :disabled="!name || !email">Submit&lt;/button></code></pre>



<p>Наконец, давайте отправим данные в какую-то асинхронную функцию и скроем модальный элемент, когда закончим:</p>



<pre class="wp-block-code"><code lang="markup" class="language-markup">&lt;button type="button" class="btn btn-primary" :disabled="!name || !email" @click="submitForm({name: name, email: email}).then(() => {showModal = false; success= true;})">Submit&lt;/button></code></pre>



<p>И получаем результат.</p>



<p class="codepen" data-height="465" data-theme-id="light" data-default-tab="result" data-user="federro" data-slug-hash="BaoYbJM" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="BaoYbJM">
  <span>See the Pen <a href="https://codepen.io/federro/pen/BaoYbJM">
  BaoYbJM</a> by Anton (<a href="https://codepen.io/federro">@federro</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://static.codepen.io/assets/embed/ei.js"></script>



<h3>Выводы</h3>



<p>Если вы создаете настоящий большой проект, то без серьезного фреймворка (Vue, React, Angular), вам вряд ли обойтись. Но если обширный функционал не требуется, то стоит обратить свой взор на <strong>Alpine.js</strong>. Легковесность и мощь этой библиотеки станут вашими хорошими друзьями.</p>



<p>Еще больше статей в нашем <a rel="noreferrer noopener" href="https://hashweb.ru/blog/" target="_blank">блоге</a></p>



<p>За главное изображение благодарность <a href="https://dribbble.com/varunest" target="_blank" rel="noreferrer noopener">Varun</a></p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/znakomimsya-s-legkoj-i-moshhnoj-alpine-js/">Знакомимся с легкой и мощной Alpine.js</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://hashweb.ru/blog/znakomimsya-s-legkoj-i-moshhnoj-alpine-js/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Как создать привлекательный Landing page (часть 2)</title>
		<link>https://hashweb.ru/blog/kak-sozdat-privlekatelnyj-landing-page-chast-2/</link>
					<comments>https://hashweb.ru/blog/kak-sozdat-privlekatelnyj-landing-page-chast-2/#respond</comments>
		
		<dc:creator><![CDATA[3eVVBKKC]]></dc:creator>
		<pubDate>Tue, 28 Apr 2020 19:48:46 +0000</pubDate>
				<category><![CDATA[Наши последние статьи]]></category>
		<guid isPermaLink="false">https://hashweb.ru/?p=281</guid>

					<description><![CDATA[<p>В первой части статьи мы начали разговаривать о разработке действительно привлекательной landing page для пользователя. Мы научились определять основную ценность и правильно доносить ее до посетителей, задумались над призывами к действию и рассмотрели причины отказов людей.<br />
Во второй части статьи мы поговорим о других способах и методах увеличения привлекательности целевой страницы. Несмотря на то, что каждый пользователь индивидуален, всегда можно выделить общие закономерности, которые увеличат конверсию. При этом нет необходимости прибегать к сомнительным приемам, которые способны навредить вашей репутации. Итак, приступим.</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/kak-sozdat-privlekatelnyj-landing-page-chast-2/">Как создать привлекательный Landing page (часть 2)</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>В <a rel="noreferrer noopener" href="https://hashweb.ru/blog/kak-sozdat-privlekatelnyj-landing-page/" target="_blank">первой части статьи</a> мы начали разговаривать о разработке действительно привлекательной <strong>landing page</strong> для пользователя. Мы научились определять основную ценность и правильно доносить ее до посетителей, задумались над призывами к действию и рассмотрели причины отказов людей.</p>



<p>Во второй части статьи мы поговорим о других способах и методах увеличения привлекательности целевой страницы. Несмотря на то, что каждый пользователь индивидуален, всегда можно выделить общие закономерности, которые увеличат конверсию. При этом нет необходимости прибегать к сомнительным приемам, которые способны навредить вашей репутации. Итак, приступим.</p>



<p>Мы остановились на мысли о том, что надо дать возможность пользователю испытать позитивные чувства.</p>



<h3>Сформировать свою индивидуальность на landing page</h3>



<p>Большая часть наших решений действовать происходит на подсознательном уровне. Фактически, согласно исследованиям, люди формируют первоначальное впечатление о сайте за 50 миллисекунд. Это первоначальное впечатление сохраняется и дальше. Другими словами, брендинг и эстетика сайта формируют наши впечатления о конечном предложении, несмотря на отсутствие причинно-следственной связи между ними.</p>



<p>Так что же все это означает на практике? Для начала, это показывает, насколько важна эстетика. Однако, что более важно, это означает, что нам нужна четкая картина того, какие первые впечатления мы хотим передать, а затем быть уверенными, что дизайн нашего <strong>landing page</strong> делает именно это.</p>



<h4>Определите, что вы хотите передать</h4>



<p>Хорошей отправной точкой является создание краткого списка слов, которые передают впечатления, которые вы хотите, чтобы пользователи почувствовали, зайдя на ваш сайт. Естественно, что некоторые слова и фразы будут универсальными. Например, вы, вероятно, захотите, чтобы ваш <strong>landing page</strong> передавал «достоверность». Однако многие фразы в конечно варианте будут зависеть от вашей аудитории и предложения.</p>



<h4>Проверка эстетики дизайна landing page</h4>



<p>Если дизайнер разработал несколько вариантов, тогда простой тест предпочтений сработает отлично. Например, вы можете спросить пользователей сайта, какой из ваших дизайнов они считают более «доступным». Если существует только один дизайн, вы можете запустить исследование, в котором вы просите пользователей оценить сайт по вашим ключевым словам. Например, является ли дизайн интуитивно понятным или нет?</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/different-landing-page-design-scaled.jpg" data-rel="lightbox-image-0" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/different-landing-page-design-1024x1014.jpg" alt="different design landing page" class="wp-image-283" width="512" height="507" srcset="https://hashweb.ru/wp-content/uploads/2020/04/different-landing-page-design-1024x1014.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/different-landing-page-design-300x297.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/different-landing-page-design-150x150.jpg 150w, https://hashweb.ru/wp-content/uploads/2020/04/different-landing-page-design-768x761.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/different-landing-page-design-1536x1522.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/different-landing-page-design-2048x2029.jpg 2048w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Теперь стоит убедиться в правильности визуальной иерархии.</p>



<h3>Создайте свою визуальную иерархию</h3>



<p>Создание четкой визуальной иерархии для вашей <strong>landing page</strong> гарантирует, что пользователи увидят нужную информацию в нужное время, и не будет отвлекаться на нерелевантный или вторичный контент.</p>



<p>Первый шаг &#8212; убедиться, что вы предоставляете правильную информацию пользователю. Это правильная точка на странице. Для этого вам нужно понять мыслительный процесс, который проходит в умах людей при просмотре вашей <strong>landing page</strong>.</p>



<p>Конечно, мы не можем быть уверены в правильности такого подхода, поскольку все люди разные. Даже юзабилити-тестирование может дать нам только примерное представление. Однако мы можем обобщить полученные результаты. Как правило, пользователь подсознательно задает ряд вопросов при просмотре целевой страницы:</p>



<ul><li>Что предлагает эта страница?</li><li>Как это поможет мне?</li><li>Какими особенностями обладает предложение?</li><li>Почему я должен доверять этой странице?</li><li>Что я должен делать дальше?</li></ul>



<p>Поэтому важно, чтобы любая визуальная иерархия страницы отражала порядок, в котором пользователь задает эти вопросы, по крайней мере, до некоторой степени. Например, типичная иерархия <strong>landing page</strong> может выглядеть примерно так:</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/landing-page-wireframe.svg"><img src="https://hashweb.ru/wp-content/uploads/2020/04/landing-page-wireframe.svg" alt="wireframe" class="wp-image-284" width="367" height="647"/></a></figure>



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



<p>Мы можем привлечь внимание к основным элементам экрана различными способами, например:</p>



<ul><li>Позиционирование</li><li>Цвет</li><li>Размер</li><li>Визуализация и образность</li><li>Анимация</li><li>Пустое пространство</li></ul>



<p>Однако, вероятно, самый эффективный метод — это минимизировать другие отвлекающие факторы на странице.</p>



<h4>Упростите свой интерфейс</h4>



<p>Чтобы достичь этого, рассмотрите возможность применения трехэтапного подхода, при котором вы систематически просматриваете каждый элемент на <strong>landing page</strong> от логотипа до ссылки на политику конфиденциальности.</p>



<p>Для каждого элемента вы будете задавать три вопроса по очереди.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/landing-page-questions.jpg" data-rel="lightbox-image-1" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/landing-page-questions-1024x512.jpg" alt="questions" class="wp-image-285" width="512" height="256" srcset="https://hashweb.ru/wp-content/uploads/2020/04/landing-page-questions-1024x512.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/landing-page-questions-300x150.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/landing-page-questions-768x384.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/landing-page-questions-1536x768.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/landing-page-questions.jpg 2048w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Начните с вопроса, могу ли я удалить этот элемент? Если я уберу это, каковы будут последствия? Будут ли эти последствия более разрушительными, чем увеличение положительного эффекта, которое создают дополнительные элементы экрана? Если нет, то лучше его убрать.</p>



<p>Если вы считаете, что содержимое слишком ценно для пользователя или помогает в конверсии, следующий вопрос, который вам нужно задать, &#8212; могу ли я скрыть этот элемент? Могу ли я разместить его на подстранице, под вкладкой или в аккордеоне?</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/vibecast.jpg" data-rel="lightbox-image-2" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/vibecast-1024x486.jpg" alt="vibecast landing page" class="wp-image-286" width="512" height="243" srcset="https://hashweb.ru/wp-content/uploads/2020/04/vibecast-1024x486.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/vibecast-300x142.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/vibecast-768x364.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/vibecast-1536x729.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/vibecast.jpg 1899w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Этот подход хорошо работает для вторичного контента, который хотя и полезен для некоторых пользователей, которым просто необходимо видеть больше деталей, но не является тем, что будет интересно большинству людей.</p>



<p>Наконец, если вы не можете скрыть контент, потому что все пользователи должны его видеть, спросите, можно ли уменьшить этот элемент? Например, люди могут захотеть узнать о вашей политике возврата товара, но это не так важно, как функции или преимущества вашего продукта. Поэтому имеет смысл визуально уменьшить его, чтобы он стал менее заметен.</p>



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



<h4>Проверьте свою визуальную иерархию</h4>



<p>К счастью, существует быстрый и недорогой способ проверить, видят ли пользователи основные элементы экрана. Это называется пятисекундным тестом. Как следует из названия, этот тест включает показ пользователям вашего дизайна в течение пяти секунд, прежде чем его скрыть. Затем вы просите пользователя вспомнить, какие элементы они помнят.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/5-questions-landing-page.png" data-rel="lightbox-image-3" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/5-questions-landing-page-1024x767.png" alt="5 questions" class="wp-image-287" width="512" height="384" srcset="https://hashweb.ru/wp-content/uploads/2020/04/5-questions-landing-page-1024x767.png 1024w, https://hashweb.ru/wp-content/uploads/2020/04/5-questions-landing-page-300x225.png 300w, https://hashweb.ru/wp-content/uploads/2020/04/5-questions-landing-page-768x575.png 768w, https://hashweb.ru/wp-content/uploads/2020/04/5-questions-landing-page-1536x1150.png 1536w, https://hashweb.ru/wp-content/uploads/2020/04/5-questions-landing-page-2048x1534.png 2048w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Обращая внимание на то, что пользователь запоминает, и на порядок, в котором он называет элементы, вы лучше поймете, насколько эффективна иерархия элементов при привлечении внимания к наиболее важным из них. Когда речь идет о разработке первоклассного <strong>landing page</strong>, тестирование будет иметь решающее значение даже после запуска.</p>



<h3>Контролировать, проверять и тестировать ваш landing page</h3>



<p>Ни одна команда не создаст оптимальную <strong>landing page</strong> с первой попытки. Всегда есть возможности для улучшений, поэтому тестирование после запуска является крайне важной частью формирования максимально эффективной целевой страницы.</p>



<p>После того, как вы запустите новую целевую страницу, вы должны внимательно следить за ней, используя метрики и дополнительные инструменты. Эти инструменты позволяют вам наблюдать за поведением пользователей на вашей странице, что должно генерировать у вас идеи для улучшения. Какой бы подход вы ни выбрали, в конечном итоге это будет цикл мониторинга, итерации и тестирования, который обеспечит долгосрочный успех любой <strong>landing page</strong>.</p>



<p>Отдельная благодарность <a href="https://dribbble.com/catalystvibes" target="_blank" rel="noreferrer noopener">catalyst</a> за основное изображение</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/kak-sozdat-privlekatelnyj-landing-page-chast-2/">Как создать привлекательный Landing page (часть 2)</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://hashweb.ru/blog/kak-sozdat-privlekatelnyj-landing-page-chast-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Как создать привлекательный Landing page</title>
		<link>https://hashweb.ru/blog/kak-sozdat-privlekatelnyj-landing-page/</link>
					<comments>https://hashweb.ru/blog/kak-sozdat-privlekatelnyj-landing-page/#respond</comments>
		
		<dc:creator><![CDATA[3eVVBKKC]]></dc:creator>
		<pubDate>Mon, 27 Apr 2020 20:14:41 +0000</pubDate>
				<category><![CDATA[Наши последние статьи]]></category>
		<guid isPermaLink="false">https://hashweb.ru/?p=269</guid>

					<description><![CDATA[<p>Landing page - это отдельная веб-страница, созданная для поддержки определенной маркетинговой кампании или таргетинга на определенный поисковый запрос. Как правило, они побуждают пользователей выполнить определенный призыв к действию, например, совершить покупку, подписаться на рассылку новостей или связаться по имеющимся контактам.<br />
Итак, как нам создать целевые страницы, которые побуждают пользователей действовать, не прибегая к манипулятивным методам? Ответ заключается в сочетании четкой направленности, продуманного дизайна и неустанного тестирования.</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/kak-sozdat-privlekatelnyj-landing-page/">Как создать привлекательный Landing page</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Если вам нужно больше клиентов или вы хотите увеличить свои продажи, вам нужны привлекательные <strong>landing page</strong> (целевые страницы). Согласно исследованиям, те компании, у которых более 30 целевых страниц, будут генерировать в семь раз больше потенциальных клиентов, чем те, у которых меньше 10.</p>



<p><strong>Landing page</strong> &#8212; это отдельная веб-страница, созданная для поддержки определенной маркетинговой кампании или таргетинга на определенный поисковый запрос. Как правило, они побуждают пользователей выполнить определенный призыв к действию, например, совершить покупку, подписаться на рассылку новостей или связаться по имеющимся контактам.</p>



<p>Итак, как нам создать целевые страницы, которые побуждают пользователей действовать, не прибегая к манипулятивным методам? Ответ заключается в сочетании четкой направленности, продуманного дизайна и неустанного тестирования.</p>



<h3>Определите вашу основную ценность</h3>



<p>Когда пользователь попадает на ваш <strong>landing page</strong>, у вас есть менее восьми секунд, чтобы привлечь его внимание. Это означает, что первый шаг в создании любой привлекательной целевой страницы состоит в том, чтобы понять, что именно эта страница предложит, и как вы можете выразить это убедительно и кратко. Это обычно называют ценностным предложением.</p>



<p>Начните с написания одного предложения, в котором сообщается, что именно вы предлагаете пользователю. Это предложение должно состоять из двух частей: какую проблему вы решаете или приносите пользу, и как этого добиться.</p>



<p>Например, ценностное предложение Skype:</p>



<blockquote class="wp-block-quote"><p><em>«Скайп помогает всегда быть на связи. Разговоры. Чат. Совместная работа».</em></p></blockquote>



<p>Первая часть обрисовывает в общих чертах, какую выгоду это обеспечивает, в то время как вторая объясняет, как это обеспечивает.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/landing-skype.jpg" data-rel="lightbox-image-0" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/landing-skype-1024x487.jpg" alt="landing page skype" class="wp-image-274" width="512" height="244" srcset="https://hashweb.ru/wp-content/uploads/2020/04/landing-skype-1024x487.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/landing-skype-300x143.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/landing-skype-768x366.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/landing-skype-1536x731.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/landing-skype.jpg 1893w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Однако будьте осторожны. Ваше ценностное предложение легко может стать бессмысленным. Например, говорить о «лучшем в своем классе» или «простом и доступном» — это то, что любая компания могла бы сказать о себе.</p>



<p>Если хотите избежать подобной ошибки, спросите себя, будет ли верным вариант противоположного написанного вами. Например, если ваш ценность звучит как:</p>



<blockquote class="wp-block-quote"><p><em>«Мы предлагаем высококачественную продукцию по доступной цене».</em></p></blockquote>



<p>Противоположность была бы смешной</p>



<blockquote class="wp-block-quote"><p><em>«Мы предлагаем продукты ужасного качества по высокой цене».</em></p></blockquote>



<p>Таким образом, вы утверждаете очевидное! Однако, напротив, если бы вы написали:</p>



<blockquote class="wp-block-quote"><p><em>«Мы предлагаем товары ручной работы для требовательного покупателя».</em></p></blockquote>



<p>Противоположность также имела бы вполне осознанное значение:</p>



<blockquote class="wp-block-quote"><p><em>«Мы предлагаем продукцию заводского производства для массового потребителя».</em></p></blockquote>



<p>Это не значит, что ваше ценностное утверждение должно ограничиваться только подобным высказыванием. Составьте список всех преимуществ, которые вы предоставляете клиентам, а затем укажите все особенности вашего предложения, которые позволяют вам предоставлять эти преимущества.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/landing-pipedrive.jpg" data-rel="lightbox-image-1" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/landing-pipedrive-1024x486.jpg" alt="landing page pipedrive" class="wp-image-272" width="512" height="243" srcset="https://hashweb.ru/wp-content/uploads/2020/04/landing-pipedrive-1024x486.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/landing-pipedrive-300x142.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/landing-pipedrive-768x364.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/landing-pipedrive-1536x729.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/landing-pipedrive.jpg 1895w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Сделав это, вы можете обратить свое внимание на призывы к действию.</p>



<h3>Определите ваши призывы к действию</h3>



<p>Каждый <strong>landing page</strong> нуждается в очевидных призывах к действию. Это означает, что вы должны спросить себя, что вы хотите, чтобы делали пользователи?</p>



<p>Чтобы повысить вероятность нужных действий пользователей на <strong>landing page</strong>, не поддавайтесь соблазну добавлять слишком много призывов к действию. Например, обращение к людям следовать за вами в социальных сетях просто отвлекает их от выполнения вашего основного действия.</p>



<p>Тем не менее, часто целесообразно иметь вторичный призыв к действию. Если вы сделали свою работу правильно, ваша целевая страница убедит многих пользователей совершить какое-то действие. Тем не менее, есть те, кто и тогда не откажется взаимодействовать с целевой страницей.</p>



<p>Вместо того, чтобы просто разочаровываться в этих пользователях, часто стоит предложить им вторичный призыв к действию, который требует меньше «ответственных» действий.</p>



<p>Например, если ваш основной призыв к действию состоит в том, чтобы позвонить или совершить покупку, ваш дополнительный призыв к действию может попросить людей подписаться на рассылку новостей.</p>



<p>Чтобы этот вторичный призыв к действию не отвлекал, убедитесь, что он не слишком заметен. Это может означать показ его ниже на странице или даже в виде всплывающего окна. Тем не менее, будьте осторожны. Некоторые пользователи крайне негативно реагируют на всплывающие окна. Поэтому их следует использовать с осторожностью.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/landing-recipe.jpg" data-rel="lightbox-image-2" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/landing-recipe-1024x471.jpg" alt="landing page recipe" class="wp-image-273" width="512" height="236" srcset="https://hashweb.ru/wp-content/uploads/2020/04/landing-recipe-1024x471.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/landing-recipe-300x138.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/landing-recipe-768x353.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/landing-recipe-1536x706.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/landing-recipe.jpg 1899w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Наконец, подумайте о том, как побудить людей выполнить призыв к действию. Возможно, вы могли бы предложить бесплатную электронную книгу, если люди подписываются на ваш список рассылки, или скидку, если они покупают через ваш <strong>landing page</strong>. Иногда что-то такое маленькое может быть толчком, которое побуждает людей действовать прямо сейчас, а не откладывать это на другой день.</p>



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



<h3>Как понять отказы пользователя landing page</h3>



<p>Почему пользователь может перестать что-либо делать на вашей <strong>landing page</strong>? Может у вас платная доставка или вы не защищаете личные данные пользователя? А может вы просто дороже своих конкуретнов? Если вы не можете легко составить список причин отказа, которые могут возникнуть у пользователей, вам нужно провести некоторое исследование, чтобы выяснить это.</p>



<p>Не переживайте, что это займет много времени или встанет вам в «копеечку». Все, что вам нужно, — это опрос с одним вопросом на вашей <strong>landing page</strong>. Если люди уходят с вашего сайта без действий, вы можете задать им один вопрос:</p>



<blockquote class="wp-block-quote"><p><em>«Если вы не совершили действие сегодня, было бы полезно узнать, почему».</em></p></blockquote>



<p>Затем вы можете показать им список возможных вариантов для выбора, или они могут добавить свои собственные. </p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/landing-questions.png" data-rel="lightbox-image-3" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/landing-questions-1024x642.png" alt="landing page questions" class="wp-image-275" width="512" height="321" srcset="https://hashweb.ru/wp-content/uploads/2020/04/landing-questions-1024x642.png 1024w, https://hashweb.ru/wp-content/uploads/2020/04/landing-questions-300x188.png 300w, https://hashweb.ru/wp-content/uploads/2020/04/landing-questions-768x482.png 768w, https://hashweb.ru/wp-content/uploads/2020/04/landing-questions-1536x963.png 1536w, https://hashweb.ru/wp-content/uploads/2020/04/landing-questions-2048x1284.png 2048w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Как только вы поймете причины, по которым люди не совершаю действий, вы можете приступить к их устранению. В идеале это означает улучшение сервисных возможностей, таких как предоставление бесплатной доставки или гарантия возврата денег. Но если этого сделать нельзя, вам нужно убедить людей как можно лучше на вашей <strong>landing page</strong>. Всегда лучше рассмотреть причины отказа, чем игнорировать их.</p>



<p>Например, McDonald&#8217;s знает, что среди некоторых людей бытует мнение о том, что их мясо берется не из лучших частей животного. Вместо того, чтобы игнорировать эти проблемы, они решают их прямо на своем сайте.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/landing-mcdonalds.jpg" data-rel="lightbox-image-4" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/landing-mcdonalds-1024x487.jpg" alt="mcdonalds" class="wp-image-271" width="512" height="244" srcset="https://hashweb.ru/wp-content/uploads/2020/04/landing-mcdonalds-1024x487.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/landing-mcdonalds-300x143.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/landing-mcdonalds-768x365.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/landing-mcdonalds-1536x730.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/landing-mcdonalds.jpg 1899w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Тем не менее, есть еще одно соображение, которое необходимо учитывать при решении проблем пользователя. Вы должны убедиться, что вы обращаетесь к ним в нужное время и в правильном направлении.</p>



<p>Отличным примером этого является конфиденциальность и безопасность. Люди не беспокоятся об этих вещах, когда читают политику конфиденциальности. Они беспокоятся об этом, когда им приходится ввести свой адрес электронной почты. Вот почему так важно уделять внимание защите данных и конфиденциальности, пока пользователи заполняют форму. Пользователи не собираются искать ответы на вашем сайте. При отсутствии пояснений, они будут отталкиваться от худшего варианта.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/landing-protection.png" data-rel="lightbox-image-5" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/landing-protection-1024x623.png" alt="protection" class="wp-image-276" width="512" height="312" srcset="https://hashweb.ru/wp-content/uploads/2020/04/landing-protection-1024x623.png 1024w, https://hashweb.ru/wp-content/uploads/2020/04/landing-protection-300x183.png 300w, https://hashweb.ru/wp-content/uploads/2020/04/landing-protection-768x468.png 768w, https://hashweb.ru/wp-content/uploads/2020/04/landing-protection-1536x935.png 1536w, https://hashweb.ru/wp-content/uploads/2020/04/landing-protection-2048x1247.png 2048w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Но кроме формулировки своего предложения и снятия негативных впечатлений, пользователь должен ощущать положительный настрой. Теперь пришло время дать им это позитивное чувство.</p>



<p><em>Продолжение статьи читайте во второй части</em>&#8230;</p>



<p>За главную иллюстрацию благодарим <a href="https://dribbble.com/catalystvibes" target="_blank" rel="noreferrer noopener">catalyst</a></p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/kak-sozdat-privlekatelnyj-landing-page/">Как создать привлекательный Landing page</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://hashweb.ru/blog/kak-sozdat-privlekatelnyj-landing-page/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Как использовать FoMO в веб-дизайне правильно?</title>
		<link>https://hashweb.ru/blog/kak-ispolzovat-fomo-v-veb-dizajne-pravilno/</link>
					<comments>https://hashweb.ru/blog/kak-ispolzovat-fomo-v-veb-dizajne-pravilno/#respond</comments>
		
		<dc:creator><![CDATA[3eVVBKKC]]></dc:creator>
		<pubDate>Fri, 24 Apr 2020 18:07:10 +0000</pubDate>
				<category><![CDATA[Наши последние статьи]]></category>
		<guid isPermaLink="false">https://hashweb.ru/?p=261</guid>

					<description><![CDATA[<p>FoMO – страх упустить важное, побуждающий человека совершить какое-либо действие. Что если убрать «страх» из «страха упустить» и использовать в веб-дизайне?</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/kak-ispolzovat-fomo-v-veb-dizajne-pravilno/">Как использовать FoMO в веб-дизайне правильно?</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p><strong>FoMO</strong> (Fear of missing out) – навязчивый страх пропустить что-то важное или выгодное, побуждающий человека совершить какое-либо действие. В русском языке этот термин носит название синдрома упущенной выгоды. По сути, это очень мощный инструмент манипуляции. Многие <a href="https://www.sciencedirect.com/science/article/pii/S0747563213000800" target="_blank" rel="noreferrer noopener">проведенные исследования</a> доказали, что навязчивое использование такой психологической манипуляции может негативно сказаться на пользовательском отношении к продукту.</p>



<p>В веб-дизайне <strong>FoMO</strong> используется повсеместно. Однако стоит понимать, что использовать такой инструмент надо осторожно, увеличивая таким образом конверсию. Что если мы уберем «страх» из «страха упустить» и поместим хорошие части этой маркетинговой стратегии в веб-дизайн и дизайн приложений? В этой статье мы разберемся, как сделать это.</p>



<h3>Что такое <strong>FoMO</strong>?</h3>



<p>Все мы неоднократно видели и видим примеры FoMO на экранах своих телефонов и компьютеров. Некоторые продукты настолько навязчиво используют этот инструмент, что от обилия таймеров с обратным отсчетом до конца «выгодного предложения» человек может впасть в депрессию. Встречались ли вам пользователи, которые бесконечно активировали экран своего смартфона или листали ленту Instagram, чтобы не упустить ничего «важного»? Уверен, что да.</p>



<p>«До конца распродажи осталось…», «Вам начислено 300 баллов. Успейте потратить их до…», «Срок ваших персональных предложений истекает…» – все это яркие примеры <strong>FoMO</strong>. Но часто используя такую тактику, никто не задумывается, что если пользователь совершит какое-то действие под воздействием стресса, то это негативно может сказать на его дальнейшем отношении ко всему продукту. Веб-дизайнеры должны помнить об этом, как никто другой.</p>



<h3>Как же использовать синдром упущенной выгоды этично и при этом эффективно?</h3>



<p>Нет ничего плохого в том, чтобы создать пользователям ограничения доступности на продукт или задать период доступности. Это становится проблемой только тогда, когда то, как вы передаете это чувство срочности или ограничения, приводит к принятию стрессовых решений. Поэтому не стоит использовать большие яркие таймеры обратного отсчета для возможности купить выбранные товары или гигантские баннеры с надписью «24-часовая распродажа!». Пользователю надо напомнить об этом более мягко.</p>



<p>Best Buy имеет целый раздел на страницах своих продуктов, посвященный доступности в самом магазине и в онлайн варианте:</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/fomo1.png" data-rel="lightbox-image-0" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/fomo1-1024x1024.png" alt="fomo" class="wp-image-263" width="512" height="512" srcset="https://hashweb.ru/wp-content/uploads/2020/04/fomo1-1024x1024.png 1024w, https://hashweb.ru/wp-content/uploads/2020/04/fomo1-300x300.png 300w, https://hashweb.ru/wp-content/uploads/2020/04/fomo1-150x150.png 150w, https://hashweb.ru/wp-content/uploads/2020/04/fomo1-768x768.png 768w, https://hashweb.ru/wp-content/uploads/2020/04/fomo1-1536x1536.png 1536w, https://hashweb.ru/wp-content/uploads/2020/04/fomo1.png 2000w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>В том, чтобы подразнить человека отсутствующими товарами, нет ничего плохого, если при этом вы предлагаете в качестве альтернативы такой же товар, но, как в этом примере, с другим цветом и объемом памяти. Если же на странице вы показываете только один товар, которого нет в наличии, то это уже плохой пример использования <strong>FoMO</strong>.</p>



<p>Другим хорошим вариантом использования синдрома упущенной выгоды является создание отдельного раздела, в котором собраны все специальные предложения с истекающим сроком. Этот подход не использует агрессивного веб-дизайна, но при этом хорошо мотивирует пользователей на совершение действий.</p>



<p>Важным для конверсионного использования <strong>FoMO</strong> является создание аккаунтов пользователями. Человек становится членом закрытого клуба, в котором хранятся необходимые ему данные. С помощью хорошо продуманного личного кабинета можно показывать «индивидуальные предложения» с ограниченным сроком действия, создавать таблицы достижений, вознаграждать за расходы и иные действия. Такие элементы можно поместить в отдельную вкладку, а пользователю указать на уникальные предложения с помощью небольшого, но привлекающего внимания элемента:</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/fomo2.png" data-rel="lightbox-image-1" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/fomo2-1024x1024.png" alt="fomo" class="wp-image-264" width="512" height="512" srcset="https://hashweb.ru/wp-content/uploads/2020/04/fomo2-1024x1024.png 1024w, https://hashweb.ru/wp-content/uploads/2020/04/fomo2-300x300.png 300w, https://hashweb.ru/wp-content/uploads/2020/04/fomo2-150x150.png 150w, https://hashweb.ru/wp-content/uploads/2020/04/fomo2-768x768.png 768w, https://hashweb.ru/wp-content/uploads/2020/04/fomo2-1536x1536.png 1536w, https://hashweb.ru/wp-content/uploads/2020/04/fomo2.png 2000w" sizes="(max-width: 512px) 100vw, 512px" /></a><figcaption>Синяя пульсирующая точка в верхнем левом углу привлекает к себе внимание</figcaption></figure>



<p>Оригинальные прогресс бары в виде закрашенных иконок или ступеней к достижению на пути к заветной цифре побуждает пользователя регулярно проверять свои достижения. Уделите этому элементу веб-дизайна особое внимание.</p>



<p>Заложите в основу дизайна возможность возмездного привлечения пользователем к продукту своих родных, друзей и знакомых, и получите еще один мощный инструмент из арсенала <strong>FoMO</strong>. Не забудьте разместить сведения о таком интересном предложении.</p>



<p>Один из страхов пользователей – несоответствие и недостижение предлагаемого образа. Веб-дизайнеру в таком случае стоит очень внимательно подойти к основной тематике. Помните, что общая картина должна быть направлена на демонстрацию доступности. Используйте максимально реалистичные фотографии, смотря на которые, пользователь будет чувствовать себя уверенно и расслабленно. Это создает общее положительное впечатление.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/fomo3.png" data-rel="lightbox-image-2" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/fomo3-576x1024.png" alt="fomo" class="wp-image-265" width="288" height="512" srcset="https://hashweb.ru/wp-content/uploads/2020/04/fomo3-576x1024.png 576w, https://hashweb.ru/wp-content/uploads/2020/04/fomo3-169x300.png 169w, https://hashweb.ru/wp-content/uploads/2020/04/fomo3-768x1365.png 768w, https://hashweb.ru/wp-content/uploads/2020/04/fomo3-864x1536.png 864w, https://hashweb.ru/wp-content/uploads/2020/04/fomo3.png 1080w" sizes="(max-width: 288px) 100vw, 288px" /></a><figcaption>&#171;Доступные&#187; фотографии</figcaption></figure>



<p>Помните, что веб-сайты и приложения, которые вы создаете для людей, должны не просто привлекать и конвертировать клиентов. Они также должны помочь сохранить этот бизнес и лояльность в долгосрочной перспективе. Будучи более ответственным при использовании инструментов <strong>FoMO</strong>, вы можете добиться этого.</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/kak-ispolzovat-fomo-v-veb-dizajne-pravilno/">Как использовать FoMO в веб-дизайне правильно?</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://hashweb.ru/blog/kak-ispolzovat-fomo-v-veb-dizajne-pravilno/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Что такое скелетный экран?</title>
		<link>https://hashweb.ru/blog/chto-takoe-skeletnyj-ekran/</link>
					<comments>https://hashweb.ru/blog/chto-takoe-skeletnyj-ekran/#respond</comments>
		
		<dc:creator><![CDATA[3eVVBKKC]]></dc:creator>
		<pubDate>Tue, 21 Apr 2020 17:12:03 +0000</pubDate>
				<category><![CDATA[Наши последние статьи]]></category>
		<guid isPermaLink="false">https://hashweb.ru/?p=251</guid>

					<description><![CDATA[<p>Скелетный экран – это версия пользовательского интерфейса, которая не содержит реального контента. Вместо этого он имитирует макет страницы, показывая ее элементы в форме. Такая форма аналогична реально существующему содержимому, которое появляется после загрузки страницы. Это, по сути, каркас страницы с заполнителями для текста и изображений.</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/chto-takoe-skeletnyj-ekran/">Что такое скелетный экран?</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Спиннеры и загрузчики традиционно позволяют сообщать пользователям, что загрузка контента займет некоторое время. Хотя этот подход очень неплох, он быстро устареет в современном развитии. <strong>Скелетный экран</strong> становится идеальной заменой традиционным загрузчикам, потому что они ориентированы на прогресс, а не на время ожидания, следовательно, сокращая время загрузки.</p>



<p>Эксперты по UI и UX учат нас, что пока пользователи ждут загрузки контента на страницу, мы должны создать видимость работы.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens1.gif" data-rel="lightbox-image-0" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens1.gif" alt="скелетный экран" class="wp-image-254" width="457" height="235"/></a></figure>



<p>Идея использования спиннеров для привлечения пользователей перед загрузкой контента в свое время была очень даже неплохой. Однако, при их использовании результат может быть далеко не идеальным, потому что большинству пользователей будет скучно смотреть на фиктивную анимацию. А представьте себе, если она еще будет очень долгой?</p>



<p><strong>Скелетный экран</strong> предлагает более хороший вариант взаимодействия с пользователем, уменьшая негативный эффект от времени загрузки. Сосредоточение внимания на прогрессе вместо времени ожидания создает иллюзию для пользователей, что информация будет постепенно отображаться на экране.</p>



<h3>Что такое скелетный экран?</h3>



<p><strong>Скелетный экран</strong> – это версия пользовательского интерфейса, которая не содержит реального контента. Вместо этого он имитирует макет страницы, показывая ее элементы в форме. Такая форма аналогична реально существующему содержимому, которое появляется после загрузки страницы. Это, по сути, каркас страницы с заполнителями для текста и изображений.</p>



<h3>В чем уникальность?</h3>



<p><strong>Скелетный экран</strong> напоминает реальный пользовательский интерфейс страницы, поэтому пользователи поймут, как быстро будет загружаться веб-приложение или мобильное приложение, даже до того, как его содержимое появится. Вот несколько причин, почему вы можете рассмотреть возможность использования подобных загрузчиков в вашем следующем проекте:</p>



<ul><li>имитировать макет страницы проще с помощью такого экрана,</li><li>содержимое загружается постепенно (не все сразу).</li></ul>



<p><strong>Скелетный экран</strong> также называют:</p>



<ul><li>призрачные элементы,</li><li>заполнители контента,</li><li>загрузчики контента.</li></ul>



<p><a rel="noreferrer noopener" href="https://www.blockchain.com/" target="_blank">Blockchain.com</a>, <a rel="noreferrer noopener" href="https://www.youtube.com/" target="_blank">YouTube</a>, <a rel="noreferrer noopener" href="https://www.facebook.com/groups/hashweb.ru" target="_blank">Facebook</a>, <a rel="noreferrer noopener" href="https://medium.com/" target="_blank">Medium </a>и другие крупные технологические компании используют подобное решение, в то время как их контент загружается для повышения UX.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens3.jpg" data-rel="lightbox-image-1" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens3-1024x466.jpg" alt="скелетный экран youtube" class="wp-image-256" width="512" height="233" srcset="https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens3-1024x466.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens3-300x137.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens3-768x350.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens3-1536x700.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens3.jpg 1899w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens2.png" data-rel="lightbox-image-2" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens2-1024x418.png" alt="скелетный экран blockchain" class="wp-image-255" width="512" height="209" srcset="https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens2-1024x418.png 1024w, https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens2-300x123.png 300w, https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens2-768x314.png 768w, https://hashweb.ru/wp-content/uploads/2020/04/skeleton-screens2.png 1363w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Такие экраны значительно улучшают взаимодействие с пользователем, избегая разочарования в виде совершенно пустого экрана и давая пользователю представление о том, как будет выглядеть контент перед его загрузкой.</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/chto-takoe-skeletnyj-ekran/">Что такое скелетный экран?</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://hashweb.ru/blog/chto-takoe-skeletnyj-ekran/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Создаем крутую анимацию «след частиц» на JavaScript</title>
		<link>https://hashweb.ru/blog/sozdaem-krutuyu-animacziyu-sled-chasticz-na-javascript/</link>
					<comments>https://hashweb.ru/blog/sozdaem-krutuyu-animacziyu-sled-chasticz-na-javascript/#respond</comments>
		
		<dc:creator><![CDATA[3eVVBKKC]]></dc:creator>
		<pubDate>Sun, 19 Apr 2020 20:53:00 +0000</pubDate>
				<category><![CDATA[Наши последние статьи]]></category>
		<guid isPermaLink="false">https://hashweb.ru/?p=244</guid>

					<description><![CDATA[<p>Вы когда-нибудь задумывались о том, чтобы увлекать посетителей вашего веб-сайта на несколько секунд причудливой, блестящей анимацией, в то время как некоторые данные загружаются в фоновом режиме?</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/sozdaem-krutuyu-animacziyu-sled-chasticz-na-javascript/">Создаем крутую анимацию «след частиц» на JavaScript</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Вы когда-нибудь задумывались о том, чтобы увлекать посетителей вашего веб-сайта на несколько секунд причудливой, блестящей анимацией, в то время как некоторые данные загружаются в фоновом режиме? К счастью, нет необходимости углубляться в графическое программирование с использованием 3D-библиотек, таких как three.js. Все, что вам нужно, это базовые знания CSS и JavaScript и легкая библиотека анимации, такая как anime.js. В итоге <a href="https://hashweb.ru/" target="_blank" rel="noreferrer noopener">мы</a> должны получить следующий результат:</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/part-anim-js.gif" data-rel="lightbox-image-0" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/part-anim-js.gif" alt="анимация «след частиц» на JavaScript" class="wp-image-245" width="396" height="303"/></a><figcaption>анимация «след частиц» на JavaScript</figcaption></figure>



<h3>Скачиваем и внедряем Anime.Js</h3>



<p>Вы можете скачать библиотеку anime.js с официального сайта <a href="https://github.com/juliangarnier/anime/" target="_blank" rel="noreferrer noopener">GitHub</a>. Загрузите файл anime.js или anime.min.js для использования в своем проекте.</p>



<p>В этом примере файл HTML выглядит следующим образом:</p>



<pre class="wp-block-code"><code lang="markup" class="language-markup">&lt;!DOCTYPE html>
&lt;html lang="en" >
&lt;head>
  &lt;meta charset="UTF-8">
  &lt;title>Anime.js Particles&lt;/title>
  &lt;!--or use anime.min.js-->
  &lt;script src="anime.js">&lt;/script>
  &lt;link rel="stylesheet" href="style.css">
&lt;/head>
&lt;body>
&lt;div class="anime-container">
&lt;/div>
&lt;script src="script.js">&lt;/script>
&lt;/body>
&lt;/html></code></pre>



<p>Файл CSS styles.css определяет цвет фона для страницы и для отдельных частиц. Настройки позиционирования необходимы, чтобы мы могли позже свободно размещать частицы на странице, используя свойства CSS <code>left</code> и <code>top</code>.</p>



<pre class="wp-block-code"><code lang="css" class="language-css">body {
 background-color: hsl(30, 3%, 14%);
}
.anime-container {
  position: relative;
}
 
.anime-container .dot{
  position: absolute;
  /*draw particles as circles:*/
  border-radius: 50%;
  background-color: hsl(60, 100%, 80%);
}</code></pre>



<h3>Генерация «частиц» </h3>



<p>Как следует из названия, анимация частиц состоит из множества мелких частиц, движущихся в пространстве по определенной схеме. Все частицы генерируются одновременно до начала анимации.</p>



<p>Для следующего объяснения будет полезна <a rel="noreferrer noopener" href="https://animejs.com/documentation/" target="_blank">официальная документация по anime.js.</a></p>



<p>В этом примере частицы расположены на архимедовой спирали. <code>x</code> и <code>y</code> положение частицы на экране (они же <code>left</code> и <code>top</code> в CSS) рассчитывается исходя из позиции <code>angle</code> по спирали:</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">x=a*angle*cos(angle)
y=a*angle*sin⁡(angle)</code></pre>



<p>Количество углов и, следовательно, длина спирали определяется параметром <code>l</code>. С помощью параметра <code>a</code> вы можете контролировать плотность спирали.</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">var container = document.querySelector(".anime-container");
var n = 15;
var a = 20;
var l = 110;
for (var i = 0; i &lt;= l; i += 1) {
  var angle = 0.1 * i;
  //shift the particles to the center of the window 
  //by adding half of the screen width and screen height
  var x = (a*angle) * Math.cos(angle) + window.innerWidth / 2;
  var y = (a*angle) * Math.sin(angle) + window.innerHeight / 2;
  var dot = document.createElement("div");
  dot.classList.add("dot");
  container.appendChild(dot);
  var size = 5;
  dot.style.width = size + "px";
  dot.style.height = size + "px";
  dot.style.left = x + "px";
  dot.style.top = y + "px";
  dot.style.backgroundColor = "hsl(60, 100%, 80%)";
  }
}</code></pre>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/part-anim-js1.png" data-rel="lightbox-image-1" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/part-anim-js1.png" alt="генерация частиц" class="wp-image-246" width="268" height="212" srcset="https://hashweb.ru/wp-content/uploads/2020/04/part-anim-js1.png 535w, https://hashweb.ru/wp-content/uploads/2020/04/part-anim-js1-300x238.png 300w" sizes="(max-width: 268px) 100vw, 268px" /></a><figcaption>Вот, что мы получим в начале</figcaption></figure>



<p>Таким образом, мы получаем спираль с одной частицей на позицию, но реальный эффект следа может быть достигнут только в том случае, если в каждой позиции генерируется более одной частицы. Чтобы спираль выглядела широкой, положение отдельных частиц должно немного отличаться. Библиотека anime.js предоставляет практическую вспомогательную функцию для этого:</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">anime.random(minValue, maxValue);</code></pre>



<p>Размер частиц также изменяется случайным образом:</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">for (var i = 0; i &lt;= l; i += 1) {
  var angle = 0.1 * i;
  //shift particles to the center of the window 
  //by adding half of the screen width and screen height
  var x = (a*angle) * Math.cos(angle) + window.innerWidth / 2;
  var y = (a*angle) * Math.sin(angle) + window.innerHeight / 2;
  var n = 15;
  
  //create n particles for each angle
  for (var j = 0; j &lt; n; j++) {
    var dot = document.createElement("div");
    dot.classList.add("dot");
    container.appendChild(dot);
    var size = anime.random(5, 10); 
    dot.style.width = size + "px";
    dot.style.height = size + "px";
    dot.style.left = x + anime.random(-15, 15) + "px";
    dot.style.top = y + anime.random(-15, 15) + "px";
    dot.style.backgroundColor = "hsl(60, 100%, 80%)";
  }
}</code></pre>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/3-partical-trail-animation-javascript.png" data-rel="lightbox-image-2" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/3-partical-trail-animation-javascript.png" alt="Спираль со случайно расположенными частицами" class="wp-image-247" width="276" height="222" srcset="https://hashweb.ru/wp-content/uploads/2020/04/3-partical-trail-animation-javascript.png 552w, https://hashweb.ru/wp-content/uploads/2020/04/3-partical-trail-animation-javascript-300x241.png 300w" sizes="(max-width: 276px) 100vw, 276px" /></a><figcaption>Спираль со случайно расположенными частицами</figcaption></figure>



<p>Перед началом анимации все частицы должны быть невидимыми. Поэтому добавим:</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">dot.style.opacity = "0";</code></pre>



<h3>Основные настройки анимации</h3>



<p>Основные настройки анимации сделаны следующим образом:</p>



<ul><li>Анимация должна повторяться непрерывно (loop: true),</li><li>Ослабление является линейным (но можно попробовать различные значения),</li><li>Целевыми элементами являются элементы с классом .dot</li></ul>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">anime({
  loop: true,
  easing: "linear",
  targets: document.querySelectorAll(".dot"),
});</code></pre>



<p>На следующем шаге будем анимировать различные свойства CSS. Основные шаги для CSS-анимации можно найти в <a rel="noreferrer noopener" href="https://animejs.com/documentation/#cssProperties" target="_blank">документации anime.js.</a></p>



<h3>Анимация непрозрачности</h3>



<p>Вот как выглядит наша первая анимация, в которой все частицы медленно становятся видимыми в течение 50 мс:</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">anime({
  loop: true,
  easing: "linear",
  targets: document.querySelectorAll(".dot"),
  opacity: { value: 1, duration: 50}
});</code></pre>



<p>И теперь мы наконец раскроем трюк, который создает спиральное движение частиц! Идея состоит в том, чтобы сделать частицы видимыми с определенной временной задержкой (например, с интервалом в 2 мс). Частицы в середине спирали сначала становятся видимыми, а затем все остальные частицы изнутри наружу. Функция <a rel="noreferrer noopener" href="https://animejs.com/documentation/#staggeringBasics" target="_blank">пошагового изменения</a> в anime.js идеально подходит для этого.</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">opacity: { value: 1, duration: 50, delay: anime.stagger(2) }</code></pre>



<p>Чтобы создать иллюзию следа, частицы должны начать медленно исчезать, как только они появились. К счастью, anime.js предоставляет <a rel="noreferrer noopener" href="https://animejs.com/documentation/#propertyKeyframes" target="_blank">инструменты для этого</a>:</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">opacity: [
    { value: 1, duration: 50, delay: anime.stagger(2) },
    { value: 0, duration: 1200}
  ],</code></pre>



<h3>Анимация размера</h3>



<p>След кометы должен казаться больше на переднем плане, чем на заднем. Для этого частицы сжимаются в течение 500 мс до диаметра 2 пикселя. Важно выбрать ту же задержку, что и для анимации непрозрачности, чтобы каждая частица начинала уменьшаться только после того, как она появилась:</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">width: { value: 2, duration: 500, delay: anime.stagger(2) },
height: { value: 2, duration: 500, delay: anime.stagger(2) },</code></pre>



<h3>Индивидуальное движение частиц</h3>



<p>Типичная вещь в анимации частиц — это индивидуальное, непредсказуемое поведение частиц. Теперь наконец оживим частицы с индивидуальным движением в <code>x</code> и <code>y</code> направлении:</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">translateX: {
    value: function() {
      return anime.random(-30, 30);
    },
    duration: 1500,
    delay: anime.stagger(2)
  },

translateY: {
    value: function() {
      return anime.random(-30, 30);
    },
    duration: 1500,
    delay: anime.stagger(2)
  }</code></pre>



<p>Опять же, важно, чтобы движение начиналось с той же временной задержкой, что и появление частиц.</p>



<p>Кроме того, в этом случае необходимо рассчитать значения для <code>translateX</code> и <code>translateY</code>.</p>



<p>Вы можете увидеть окончательный результат:</p>



<figure class="wp-block-image size-large"><img width="791" height="605" src="https://hashweb.ru/wp-content/uploads/2020/04/part-anim-js.gif" alt="анимация «след частиц» на JavaScript" class="wp-image-245"/><figcaption>Конечный результат</figcaption></figure>



<p>Вы можете изменить анимацию на свой вкус, просто настроив все значения. У нас есть небольшой совет для последних штрихов: теперь, когда мы знакомы с параметрами на основе функций, анимацию непрозрачности можно немного улучшить:</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">opacity: [
    { value: 1, duration: 50, delay: anime.stagger(2) },
    { value: 0, duration: function(){return anime.random(500,1500);}}
],</code></pre>



<p>Время до исчезновения частицы теперь устанавливается для каждой частицы отдельно. Это делает нашу анимацию визуально еще более сложной.</p>



<p>Теперь вы познакомились с прекрасной библиотекой anime.js</p>



<p>Конечный вариант файла script.js:</p>



<pre class="wp-block-code"><code lang="javascript" class="language-javascript">var container = document.querySelector(".anime-container");

var a = 20;
var l = 110;

for (var i = 0; i &lt;= l; i += 1) {
  var angle = 0.1 * i;
  var x = (a*angle) * Math.cos(angle) + window.innerWidth / 2;
  var y = (a*angle) * Math.sin(angle) + window.innerHeight / 2;

  var n = 15;
  
  for (var j = 0; j &lt; n; j++) {
    var dot = document.createElement("div");
    dot.classList.add("dot");
    container.appendChild(dot);

    var size = anime.random(5, 10);
   
    dot.style.width = size + "px";
    dot.style.height = size + "px";
   
    dot.style.left = x + anime.random(-15, 15) + "px";
    dot.style.top = y + anime.random(-15, 15) + "px";
    
    dot.style.opacity = "0";
  
  }
}

anime({
  loop: true,
  easing: "linear",
  opacity: [
    { value: 1, duration: 50, delay: anime.stagger(2) },
    { value: 0, duration: function(){return anime.random(500,1500);}}
  ],
  width: { value: 2, duration: 500, delay: anime.stagger(2) },
  height: { value: 2, duration: 500, delay: anime.stagger(2) },
  
  targets: document.querySelectorAll(".dot"),
 
  translateX: {
    value: function() {
      return anime.random(-30, 30);
    },
    duration: 1500,
    delay: anime.stagger(2)
  },
  translateY: {
    value: function() {
      return anime.random(-30, 30);
    },
    duration: 1500,
    delay: anime.stagger(2)
  }
});</code></pre>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/sozdaem-krutuyu-animacziyu-sled-chasticz-na-javascript/">Создаем крутую анимацию «след частиц» на JavaScript</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://hashweb.ru/blog/sozdaem-krutuyu-animacziyu-sled-chasticz-na-javascript/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Консоль разработчика – незаменимый инструмент веб-мастера (часть 1)</title>
		<link>https://hashweb.ru/blog/konsol-razrabotchika-nezamenimyj-instrument-veb-mastera-chast-1/</link>
					<comments>https://hashweb.ru/blog/konsol-razrabotchika-nezamenimyj-instrument-veb-mastera-chast-1/#respond</comments>
		
		<dc:creator><![CDATA[3eVVBKKC]]></dc:creator>
		<pubDate>Fri, 17 Apr 2020 19:29:05 +0000</pubDate>
				<category><![CDATA[Наши последние статьи]]></category>
		<guid isPermaLink="false">https://hashweb.ru/?p=236</guid>

					<description><![CDATA[<p>Консоль разработчика – один из самых необходимых инструментов для веб-мастеров и дизайнеров всех уровней. Сегодня мы решили немного поговорить о ней. Выясним, почему она действительно незаменима и раскроем несколько полезных секретов.</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/konsol-razrabotchika-nezamenimyj-instrument-veb-mastera-chast-1/">Консоль разработчика – незаменимый инструмент веб-мастера (часть 1)</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p><strong>Консоль разработчика</strong> – один из самых необходимых инструментов для веб-мастеров и дизайнеров всех уровней. Сегодня мы решили немного поговорить о ней. Выясним, почему она действительно незаменима и раскроем несколько полезных секретов.</p>



<p>В качестве примера мы будем использовать самый популярный мировой браузер Google Chrome. Однако аналогичные инструменты с примерно похожим функционалом существуют во всех крупных браузерах. Стоит сразу понять, что тема очень обширная, и уложить все в одну статью попросту не получится.</p>



<h3>Знакомимся с консолью разработчика</h3>



<p>Давайте для примера возьмем нашу любимую поисковую систему Google (надеемся, они не обидятся). Запустим наш Chrome и в поисковике наберем фразу «<strong>консоль разработчика</strong>» просто для примера. Теперь запустим наш инструмент. Сделать это довольно просто:</p>



<ul><li>нажатием клавиши F12;</li><li>нажатием сочетания клавиш Ctrl + Shift + I;</li><li>через контекстное меню, вызванное нажатием правой кнопки мыши -> Просмотреть код;</li><li>найдя в меню самого браузера пункт Дополнительные инструменты -> Инструменты разработчика.</li></ul>



<p>Настроить внешний вид вы можете под себя или под конкретную задачу. Рядом с закрывающим значком в правом верхнем углу консоли разработчика есть меню, при нажатии на которое можно найти вариант расположения инструмента.</p>



<p>Сама <strong>консоль разработчика</strong> состоит из 9 основных вкладок. Давайте начнем их рассматривать.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/console-log-1.jpg" data-rel="lightbox-image-0" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/console-log-1-1024x481.jpg" alt="консоль разработчика" class="wp-image-238" width="512" height="241" srcset="https://hashweb.ru/wp-content/uploads/2020/04/console-log-1-1024x481.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-1-300x141.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-1-768x361.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-1-1536x721.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-1.jpg 1919w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Первая вкладка носит название «Elements». Разработчики не зря поместили ее на первое место, поскольку многие веб-мастера пользуются ей чаще остальных. Как понятно из названия, с ее помощью можно исследовать все HTML элементы с CSS свойствами на странице.</p>



<p>На панели слева можно увидеть все элементы, а в правой части расположены используемые стили. Очень полезной функцией является возможность правки элементов и их свойств непосредственно в <strong>консоли разработчика</strong> в режиме онлайн. На исходные файлы ваше творчество не оказывает никакого влияния, а после перезагрузки страницы все вернется на круги своя.</p>



<p>Если вам необходимо выбрать определенный элемент на странице, нет смысла прокручивать все дерево вниз в поисках нужного фрагмента. Если вы заметили, в левом верхнем углу <strong>консоли разработчика</strong> есть две иконки – одна со стрелочкой, другая с мобильным телефоном. Нажав первую, вы как раз и активируете режим выбора конкретного элемента на странице. Вторая иконка отвечает за переключение полноэкранного режима в эмуляцию работы на различных устройствах – совершенно незаменимая вещь.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/console-log-2.jpg" data-rel="lightbox-image-1" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/console-log-2-1024x481.jpg" alt="консоль разработчика" class="wp-image-239" width="512" height="241" srcset="https://hashweb.ru/wp-content/uploads/2020/04/console-log-2-1024x481.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-2-300x141.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-2-768x361.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-2-1536x721.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-2.jpg 1919w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Давайте опробуем <strong>консоль разработчика</strong> в деле. Выберем один из пунктов поиска в google и попробуем изменить его цвет. Как мы видим, существует возможность изменить свойства как всего класса, так и отдельного элемента. При этом, если пролистать свойства вниз, то можно увидеть все, которые наследует элемент. Здесь же находится возможность посмотреть стили при использовании псевдоклассов (таких, как hover).</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/console-log-3.jpg" data-rel="lightbox-image-2" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/console-log-3-1024x481.jpg" alt="консоль разработчика" class="wp-image-240" width="512" height="241" srcset="https://hashweb.ru/wp-content/uploads/2020/04/console-log-3-1024x481.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-3-300x141.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-3-768x361.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-3-1536x721.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-3.jpg 1919w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<h3>Консоль разработчика .Полезные функции вкладки Elements </h3>



<p>Давайте посмотрим полезные секреты, которые можно использовать при работе с элементами. Для примера воспользуемся известным ресурсом Instagram и откроем страницу самой <a href="https://www.instagram.com/instagram/" target="_blank" rel="noreferrer noopener">социальной сети</a>. Также надеемся, что они не обидчивые. Откроем любой пост с изображением.</p>



<p>Instagram не позволяет просто так скачивать фотографии со своего ресурса. Мы же все-таки попробуем это сделать. Открываем <strong>консоль разработчика</strong>, выбираем элемент с фотографией. Раскрываем элемент div, в который обернуто изображение…и находим несколько ссылок. Нас интересует последняя. Двойное нажатие на нее открывает возможность редактирования.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/console-log-4.jpg" data-rel="lightbox-image-3" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/console-log-4-1024x479.jpg" alt="консоль разработчика" class="wp-image-241" width="512" height="240" srcset="https://hashweb.ru/wp-content/uploads/2020/04/console-log-4-1024x479.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-4-300x140.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-4-768x359.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-4-1536x718.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-4.jpg 1919w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Далее все просто. Копируем ссылку, открываем ее в новом окне и наслаждаемся эффектом. Изображение открыто в новой вкладке, и мы запросто можем сохранить его себе на компьютер.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://hashweb.ru/wp-content/uploads/2020/04/console-log-5.jpg" data-rel="lightbox-image-4" data-magnific_type="image" data-rl_title="" data-rl_caption="" title=""><img src="https://hashweb.ru/wp-content/uploads/2020/04/console-log-5-1024x481.jpg" alt="консоль разработчика" class="wp-image-242" width="512" height="241" srcset="https://hashweb.ru/wp-content/uploads/2020/04/console-log-5-1024x481.jpg 1024w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-5-300x141.jpg 300w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-5-768x361.jpg 768w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-5-1536x721.jpg 1536w, https://hashweb.ru/wp-content/uploads/2020/04/console-log-5.jpg 1919w" sizes="(max-width: 512px) 100vw, 512px" /></a></figure>



<p>Понятно, что рассмотреть все возможности <strong>консоли разработчика</strong> в одной статье попросту невозможно. Поэтому <a href="https://hashweb.ru/">мы</a> решили преподнести весь материал в нескольких статьях. Впереди еще больше интересного. Расскажем про поиск ошибок, покажем несколько интересных трюков. Скучно точно не будет.</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/konsol-razrabotchika-nezamenimyj-instrument-veb-mastera-chast-1/">Консоль разработчика – незаменимый инструмент веб-мастера (часть 1)</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://hashweb.ru/blog/konsol-razrabotchika-nezamenimyj-instrument-veb-mastera-chast-1/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Рефакторинг. Что это? Для чего нужен?</title>
		<link>https://hashweb.ru/blog/refaktoring-chto-eto-dlya-chego-nado/</link>
					<comments>https://hashweb.ru/blog/refaktoring-chto-eto-dlya-chego-nado/#respond</comments>
		
		<dc:creator><![CDATA[3eVVBKKC]]></dc:creator>
		<pubDate>Wed, 15 Apr 2020 13:08:31 +0000</pubDate>
				<category><![CDATA[Наши последние статьи]]></category>
		<guid isPermaLink="false">https://hashweb.ru/?p=232</guid>

					<description><![CDATA[<p>Решили поговорить о рефакторинге. Мы попробуем простыми словами объяснить, что это такое, зачем нужен и когда проводить. Тема достаточно несложная, но уделить ей некое внимание все же стоит</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/refaktoring-chto-eto-dlya-chego-nado/">Рефакторинг. Что это? Для чего нужен?</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Решили поговорить о <strong>рефакторинге</strong>. <a href="https://hashweb.ru/" target="_blank" rel="noreferrer noopener">Мы</a> попробуем простыми словами объяснить, что это такое, зачем надо и когда проводить. Тема достаточно несложная, но уделить ей некое внимание все же стоит. И неважно, новичок вы или многоопытный профессионал.</p>



<h3>Что такое рефакторинг?</h3>



<p>Если вы читаете эту статью, то, наверняка, вам хотя бы раз приходилось писать какой-либо программный код. И совершенно неважно, какой язык вы при этом использовали. Были ли это фундаментальные строго типизированные языки программирования, либо даже языки разметки или стилей, суть останется одной.</p>



<p><strong>Рефакторинг</strong> – процесс упрощения кода, если говорить простыми словами. Синонимами такого определения являются перепроектирование и переработка кода с целью его облегчения и понимания. Используется он гораздо чаще, чем кажется. Иногда такая работа может носить небольшой локальный характер, а иногда без большой переделки ничего не получится.</p>



<p>Практически все разработчики сходятся во мнении – нельзя сразу написать прекрасный и понятный код. Иногда поджимающее время не позволяет сделать сразу хорошо. Приходится использовать временные решения. И вы честно говорите себе, что как только выдастся свободная минутка, вы сразу же исправите код должным образом.</p>



<p>Допустим, что у вас так и не выдалось свободной минутки, а над проектом вы доблестно перестали трудиться. Следующий разработчик, открыв код, может ужаснуться увиденному. Но и у него не хватает ни времени, ни желания разбирать ваше творение. Поэтому он добавляет своих временных решений. А проблемы копятся как снежный ком. В итоге, в один прекрасный день, увеличение функционала и масштабируемость вашего проекта будут попросту невозможны. Вот тогда и встанет вопрос о серьезном <strong>рефакторинге</strong>, в процессе которого этот код будет приводиться к читаемой и понятной форме.</p>



<h3>Для чего проводится?</h3>



<p><strong>Рефакторинг</strong> в самом общем виде решает такие задачи и проблемы, как</p>



<ul><li>дублирование кода;</li><li>логическая минимизация кода;</li><li>упрощение методов и функций;</li><li>обнаружение ошибок;</li><li>читаемость кода для других программистов.</li></ul>



<p>Если ваш проект сложный и большой, то без регулярного <strong>рефакторинга</strong> вам просто не обойтись. Это продлевает жизнь ваших проектов, позволяет расширять их функционал. Согласитесь, все же большую часть времени разработчики тратят на работу с уже написанным кодом, нежели с созданием совершенно нового. Читать чужой код гораздо приятнее, когда его элементарно можно понять.</p>



<p>Не стоит путать <strong>рефакторинг</strong> с такими понятиями как реинжиниринг и оптимизация. Оптимизация, как и <strong>рефакторинг</strong>, не изменяет функционал кода, а ускоряет его работу, сжимает и минимизирует. Но зачастую это затрудняет понимание написанного кода. Реинжиниринг же является процессом добавления функциональности.</p>



<p>В любом случае, приведение программного кода к удобному, читаемому, понятному и «чистому» виду хорошо сказывается как на производительности всего проекта, так и на его дальнейшей жизни.</p>



<p>Прекрасное изображение в начале статьи заимствовано у <a href="https://dribbble.com/alzer81" target="_blank" rel="noreferrer noopener">Al Power<img src="https://s.w.org/images/core/emoji/13.1.0/72x72/2122.png" alt="™" class="wp-smiley" style="height: 1em; max-height: 1em;" /></a></p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/refaktoring-chto-eto-dlya-chego-nado/">Рефакторинг. Что это? Для чего нужен?</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://hashweb.ru/blog/refaktoring-chto-eto-dlya-chego-nado/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Слайдер на сайт. Выбираем JS плагин</title>
		<link>https://hashweb.ru/blog/slajder-na-sajt-vybiraem-js-plagin/</link>
					<comments>https://hashweb.ru/blog/slajder-na-sajt-vybiraem-js-plagin/#respond</comments>
		
		<dc:creator><![CDATA[3eVVBKKC]]></dc:creator>
		<pubDate>Mon, 13 Apr 2020 18:32:35 +0000</pubDate>
				<category><![CDATA[Наши последние статьи]]></category>
		<guid isPermaLink="false">https://hashweb.ru/?p=227</guid>

					<description><![CDATA[<p>Вы наверняка множество раз видели слайдеры на сайте. Они могут быть сложные и замысловаты, а порой бывают небольшие и простенькие. В больших проектах, где трудится множество разработчиков, может быть оправданным создание своей собственной индивидуальной карусели. Но, если масштабность вам не нужна, то мы подготовили для вас несколько интересных уже готовых библиотек, которые легко можно использовать для создания слайдера на сайте</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/slajder-na-sajt-vybiraem-js-plagin/">Слайдер на сайт. Выбираем JS плагин</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Тема выбора и использования <strong>слайдера на сайт</strong> волнует многих. Вопрос актуален как для начинающих и матерых веб-разработчиков, так и для пользователей, которые просто хотят внедрить такой интересный элемент на свою веб-страницу. И это понятно, поскольку правильно подобранная и внедренная карусель может существенно увеличить удобство для пользователей. Кроме того, слайдеры позволяют донести до посетителей дополнительную информацию.</p>



<p>Вы наверняка множество раз видели <strong>слайдеры на сайте</strong>. Они могут быть сложные и замысловаты, а порой бывают небольшие и простенькие. В больших проектах, где трудится множество разработчиков, может быть оправданным создание своей собственной индивидуальной карусели. Но, если масштабность вам не нужна, то мы подготовили для вас несколько интересных уже готовых библиотек, которые легко можно использовать для создания <strong>слайдера на сайте</strong>.</p>



<h3><a href="https://kenwheeler.github.io/slick/" target="_blank" rel="noreferrer noopener">Slick slider</a></h3>



<p>Крайне мощный плагин. Повсеместно используется для создания <strong>слайдеров на сайтах</strong>. Большой выбор различных вариантов карусели из коробки. Из положительных сторон, кроме функциональности, стоит отметить очень доступную и наглядную документацию с яркими примерами. Разобраться сможет даже новичок. Очень гибкая настройка и простое подключение. Для работы используется библиотека jQuery.</p>



<h3><a href="https://swiperjs.com/" target="_blank" rel="noreferrer noopener">Swiper JS</a></h3>



<p>Приобрел очень большую популярность в веб-разработке на Западе благодаря своей гибкости и простоте использования. Если решите посчитать все вариации Swiper для создания <strong>слайдера на сайт</strong>, то, наверное, собьетесь. Их действительно много. На официальном сайте библиотеки можно найти очень подробную документацию. Она на английском языке, но совершенно несложная. Визуальные примеры хоть и наглядные, но не обладают простотой восприятия. Кстати, хорошая новость для сторонников чистого JavaScript – библиотека работает без использования jQuery.</p>



<h3><a href="https://fotorama.io/" target="_blank" rel="noreferrer noopener">Fotorama</a></h3>



<p>Следующий плагин для создания <strong>слайдера на сайт</strong> – Fotorama. Отличительной особенностью является довольно симпатичный дизайн уже из коробки без каких-либо доработок. Подходит для использования любого содержимого, но, как понятно из названия, очень хорошо смотрится при работе с фотографиями. Подключается к проекту также просто. Для работы использует jQuery.</p>



<h3><a href="https://owlcarousel2.github.io/OwlCarousel2/" target="_blank" rel="noreferrer noopener">Owl Carousel</a></h3>



<p>Довольно популярный и немолодой плагин для создания <strong>слайдеров на сайте</strong>. Нельзя сказать, что обладает очень большим функционалом по умолчанию, однако при должном приложении сил превращается в очень мощный инструмент. На сайте имеется несложная документация с примерами. Также использует библиотеку jQuery.</p>



<h3><a href="https://getbootstrap.com/" target="_blank" rel="noreferrer noopener">Встроенная карусель Bootstrap</a></h3>



<p>В принципе, можно было остановиться и на четырех библиотеках, поскольку для создания <strong>слайдера на сайт</strong> их более, чем достаточно. Однако мы посчитали, что стоит упомянуть и встроенную карусель Bootstrap, о котором <a href="https://hashweb.ru/blog/bootstrap-nezamenimyj-instrument-veb-razrabotchika/" target="_blank" rel="noreferrer noopener">мы недавно рассказывали</a>. Связано это с тем, что очень много сайтов сейчас используют этот фреймворк, а многие разработчики уже не представляют без него нормального адаптивного проекта. Карусель от Bootstrap не обладает богатым функционалом, но со своими задачами справляется на ура. Если вам не требуется решения грандиозных задач, а ваш сайт уже использует Bootstrap, то нет особого смысла подключать сторонние библиотеки.</p>



<p>Стоит отметить, что все указанные плагины являются бесплатными и могут с легкостью использоваться для любых проектов. Все инструменты обладают своим функционалом. Нельзя сказать, что какой-то из них лучше или хуже. <strong>Слайдер на сайте</strong> может использоваться совершенно в разных местах, и именно от поставленной задачи будет зависеть конечный выбор. Не бойтесь экспериментировать, поскольку так вы сможете добиться наилучшего эффекта.</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/slajder-na-sajt-vybiraem-js-plagin/">Слайдер на сайт. Выбираем JS плагин</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://hashweb.ru/blog/slajder-na-sajt-vybiraem-js-plagin/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Создаем крутой CSS эффект для информационной карточки</title>
		<link>https://hashweb.ru/blog/sozdaem-krutoj-css-effekt-dlya-informaczionnoj-kartochki/</link>
					<comments>https://hashweb.ru/blog/sozdaem-krutoj-css-effekt-dlya-informaczionnoj-kartochki/#respond</comments>
		
		<dc:creator><![CDATA[3eVVBKKC]]></dc:creator>
		<pubDate>Fri, 10 Apr 2020 21:23:30 +0000</pubDate>
				<category><![CDATA[Наши последние статьи]]></category>
		<guid isPermaLink="false">https://hashweb.ru/?p=223</guid>

					<description><![CDATA[<p>Сегодня мы решили показать очередной практический пример адаптивной верстки с использованием HTML и CSS. Часто бывает необходимо создать что-то оригинальное и необычное. Да, безусловно сложные элементы будут создаваться с использованием JavaScript. Однако и самый обычный CSS не оделен крайне полезными функциями.</p>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/sozdaem-krutoj-css-effekt-dlya-informaczionnoj-kartochki/">Создаем крутой CSS эффект для информационной карточки</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Сегодня <a href="https://hashweb.ru/" target="_blank" rel="noreferrer noopener">мы</a> решили показать очередной практический пример адаптивной верстки с использованием HTML и CSS. Часто бывает необходимо создать что-то оригинальное и необычное. Да, безусловно сложные элементы будут создаваться с использованием JavaScript. Однако и самый обычный CSS не оделен крайне полезными функциями.</p>



<p>В этом видео мы создадим очень симпатичный эффект. Наша основная информационная карточка будет скрыта по умолчанию. Показана же будет небольшая кнопочка, при наведении на которую наша карточка будет красиво всплывать. </p>



<p>Основным свойством CSS, с которым мы будем работать, является clip-path. Оно задает своеобразную область видимости фигур, за счет которой части элементов будут скрыты. При различных применениях clip-path можно добиться просто потрясающих эффектов, используя только HTML и CSS. Это действительно просто. Экспериментируйте, и результат превзойдет даже ваши самые смелые ожидания.</p>



<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe title="Создаем классный эффект для информационной карточки" width="640" height="360" src="https://www.youtube.com/embed/Z7isyRS3YbU?feature=oembed" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div></figure>
<p>Сообщение <a rel="nofollow" href="https://hashweb.ru/blog/sozdaem-krutoj-css-effekt-dlya-informaczionnoj-kartochki/">Создаем крутой CSS эффект для информационной карточки</a> появились сначала на <a rel="nofollow" href="https://hashweb.ru">Веб студия HashWeb</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://hashweb.ru/blog/sozdaem-krutoj-css-effekt-dlya-informaczionnoj-kartochki/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
