5 приемов для разработки динамических сайтов
Идеальный сайт — это тот, который одновременно прост и интересен. Лучшие вебсайты создают впечатление того, что будущее наступило, и пользователи идут в ногу со временем. Это пробуждает у пользователей желание снова и снова заходить на сайт, просто потому что он классно загружается и по нему весело гулять. Веб-дизайн — это искусство, а с современными техниками программирования стало так просто создавать сайты, которые радуют и вдохновляют пользователей.
Этот урок научит, как создать особый эффект, не только любителей, ранее использовавших чистый HTML, но и настоящих профессионалов, желающих научиться создавать простые, приятные, эффектные сайты. Более того, я расскажу, какие именно эффекты притягивают пользователей. Этот список из пяти техник поможет вам создавать динамические сайты, на которые пользователи будут заходить снова и снова.
Вертикальные скрывающиеся панели
Если на вашем сайте есть информация, которую вы не хотите открывать в новом окне, но и не хочется, чтоб она вечно было на виду, поместите ее на вертикальную панель, которая будет открываться и скрываться при нажатии на кнопку.
Для того чтобы создать такую панель, вам понадобится HTML блок, основа в виде CSS стилей, а также jQuery для соединения всего этого.
У HTML блока div будет id = “frame” и class = “content”. В этом блоке находится основной конент. Затем создайте div с классом “panel” для содержимого вертикальной панели. Не включайте этот блок в предыдущий! В конце добавьте кнопку.
CSS стили должны описать, как будет выглядеть панель во всевозможных состояниях: в свернутом и развернутом виде, при наведении на кнопку курсора, при прокрутке внутри панели и т.д. Напишите стили для .panel, .panel a: visited, .panel a:hover, .panel a:visited:hover и т.п. Определите цвета, размеры, фоны и др. Добавьте стиль для кнопки: a.trig, a.trig:hover.
Соединяя все это, добавьте код jQuery в начало документа HTML. Сначала добавьте ссылку на jQuery в теге script, а затем, используя описанные ранее классы .panel и .trig, напишите следующий код:
$(document).ready(function(){ $(".trig").click(function(){ $(".panel").toggle("fast"); $(this).toggleClass("active"); return false; }); });
Изысканный фокус и эффекты наведения курсора
Самое приятное в хорошем сайте — это, то что эффекты происходят плавно. Если вы наведете курсор на кнопку, ее цвет никогда резко не поменяется с зеленого на синий. Вместо этого вы увидите плавный переход от одного цвета к другому. Это делает дизайн сайта мягким и легким. С помощью CSS3, который поддерживается всеми браузерами кроме IE, вы можете создавать кнопки, которые будут плавно менять цвет и стиль при наведении курсора, а также текстовые поля с меняющимися стилями. Эту простую технику можно применить для создания изящных эффектов.
Стандартный CSS стиль выглядит так:
.class { background-color: color: width: position: etc... } .class:hover { etc... }
Тем не менее, все что вам нужно сделать, это включить пару строчек в описание вашего стиля, которые при активации функции hover отработаются средствами «ease-in» CSS3.
-webkit-transition: background-color 500ms ease-in; -moz-transition: background-color 500ms ease-in; -o-transition: background-color 500ms ease-in; transition: background-color 500ms ease-in;
Это можно применить для background-color, width, color при их изменении между .class и .class:hover.
Эти эффекты также можно использовать в комплексе с так называемыми CSS Sprite Techniques. В общем, если вы объедините все изображения в один спрайт, то чтобы затем придать эффект одному из них при наведении курсора, нужно будет в стиле .class:hover изменить параметр background-position так, чтобы он принимал отрицательное значение. Если нужное изображение на 50 пикселей выше первого изображения, то код выглядит так:
.class { background-position: 0px 0px width: etc. } .class:hover { background-position: 0px -50px width: etc. }
Функции ease-in можно использовать для создания эффекта «slot machine wheel», также можно создавать эффекты наложения изображения.
Мы написали 4 строчки кода описания эффекта ease-in, потому что: первая строка — это стандарт CSS3 для Chrome и Safari, вторая — для Firefox, третья — для Opera.
Пример
Duoh - заметьте, что эффекты не отображаются в IE.
Спрятанный контент и эффекты при наведении курсора
Обычную концепцию прокрутки изображений можно использовать для скрытия определенного контента до тех пор, пока курсор не наведен на него. Это удобно для блогов, где есть необходимость добавления тизеров постов. Скрытым контентом может быть ссылка на написание комментария или открытие статьи полностью, которая появится только при наведении курсора на определенный пост. Эта маленькая деталь придает ощущение динамичности сайту, потому что весь сайт фокусируется именно на том, на чем в данный момент сфокусирован взгляд пользователя.
Для создания т.н. ролловеров изображений программисты используют JavaScript функции onMouseOver и onMouseOut для тега img. Также можно использовать их для тега div, чтобы создать ролловер блоков текста.
Просто создайте отдельный класс div, в который будет заключен контент, появляющийся или скрывающийся в зависимости от наведения курсора. В следующем примере в отдельные классы div помещается каждый пост блога, так что назовем этот класс «post». Напишите HTML код для случая, когда контент скрыт и когда он появляется: id=”nonhover” и id=”hover”.
Затем добавьте стандартный JavaScript код:
$('.post').mouseover(function() { $('#hover').css('display', 'inline'); $('#nonhover').css('display', 'none'); }); $('.post').mouseout(function() { $('#hover').css('display','none'); $('#nonhover').css('display', 'block'); });
Пример: CSS-Tricks
Счетчики и диаграммы
Было бы круто создать динамические графики для подсчета пожертвований, количества комментариев и нажатий на «нравится», или любой другой информации, касающейся пользователей сайта и их активности. Для создания таких диаграмм требуется сделать три вещи: следить за динамически создаваемыми наборами чисел, сортировать эти числа по убыванию и создавать горизонтальные и вертикальные диаграммы для их отображения. Проще всего для этого создать один блок и разделить его на части для каждой категории.
Для начала, напишите код, который будет сортировать категории по убыванию. Начните с поиска категории с большим числом. Эта часть кода также назначает число каждой категории, которую вы ищете.
$highest = 0; foreach((get_the_category()) as $cat) { $ct_count = $cat->category_count; if($ct_count > $highest){ $highest = $ct_count; } }
Затем, извлеките информацию о каждой категории $cat, а именно ее название и счетчики, и назовите их $ct_name и $ct_count. Задайте также переменную $width, зависящую от значения $ct_count. Вставьте этот кусок кода в div диаграммы:
foreach((get_categories(‘orderby=count&order=desc’)) as $cat) { $ct_name = $cat->cat_name; $ct_count = $cat->category_count; $width = ($ct_count * 100) / $highest; echo '<a href="#" style="width: .'$width'.%"> . '$cat_name'. (.'$cat_count'.)</a>'; }
В цикле создадутся строки диаграммы длиной, зависящей от самой длинной, которая займет ширину всего блока.
Пример.
Engadget - в самом низу вы увидите диаграмму самых часто комментируемых постов.
Изменение размера изображения при наведении курсора
Наконец, если на вашем сайте есть галереи изображений или фотографий, вы можете добавить эффект overflow при увеличении размера одной из них. При наведении курсора на какое-либо изображение, оно моментально увеличится до своего реального размера, но не откроется в новом окне. Это очень простой, но чрезвычайно важный элемент любого сайта, на котором есть фото-галереи.
Этот код не увеличивает само изображение при наведении курсора. Изменяется блок под изображением. Для изменения этого блока нужно поиграться со свойством CSS overflow.
Каждое изображение поместите в тег а:
<a href="/><img src="photo.jpg"></a>
Не изменяйте размер изображения здесь. Сделайте это через CSS. Например, для изображения размером 120x150 px с миниатюрой 100x100 px код будет выглядеть так:
ul#thumbnail a{ width:100px; height:100px; line-height:100px; display:block; float:left; overflow:hidden; position:relative; z-index:1; } ul#thumbnail a img{ top:-20px; left:-50px; float:left; position:absolute; }
Заметьте, что значения top и left — отрицательные. Поиграйте числами, чтобы получить изображение нужного размера. Строка overflow:hidden скрывает все отрицательные значения.
Чтобы миниатюра перекрывалась реальным изображением при наведении мыши, добавьте код:
ul#thumbnail a:hover{ z-index:1000; border:none; overflow:visible; }
Пример:
Выводы
Это всего лишь простенькие техники и хитрости, которые могут быть полезны при создании динамического сайта. Некоторые из них просто выглядят круто, а другие действительно упрощают навигацию по сайту для пользователей. Экспериментируйте с использованием этих техник и создавайте красивые, профессиональные сайты!
Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/SfQvjamYYqw/lessons.php
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2024-11-26 » Капитан грузового судна, или Как начать использовать Docker в своих проектах
- 2024-11-26 » Обеспечение безопасности ваших веб-приложений с помощью PHP OOP и PDO
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-15 » Перенос сайта на WordPress с одного домена на другой
- 2024-11-08 » OSPanel 6: быстрый старт
- 2024-11-08 » Как установить PhpMyAdmin в Open Server Panel
- 2024-09-30 » Как быстро запустить Laravel на Windows
- 2024-09-25 » Next.js
- 2024-09-05 » OpenAI рассказал, как запретить ChatGPT использовать содержимое сайта для обучения
- 2024-08-28 » Чек-лист: как увеличить конверсию интернет-магазина на примере спортпита
- 2024-08-01 » WebSocket
- 2024-07-26 » Интеграция с Яндекс Еда
- 2024-07-26 » Интеграция с Эквайринг
- 2024-07-26 » Интеграция с СДЕК
- 2024-07-26 » Интеграция с Битрикс-24
- 2024-07-26 » Интеграция с Travelline
- 2024-07-26 » Интеграция с Iiko
- 2024-07-26 » Интеграция с Delivery Club
- 2024-07-26 » Интеграция с CRM
- 2024-07-26 » Интеграция с 1C-Бухгалтерия
- 2024-07-24 » Что такое сторителлинг: техники и примеры
- 2024-07-17 » Ошибка 404: что это такое и как ее использовать для бизнеса
- 2024-07-03 » Размещайте прайс-листы на FarPost.ru и продавайте товары быстро и выгодно
- 2024-07-01 » Профилирование кода в PHP
- 2024-06-28 » Изучаем ABC/XYZ-анализ: что это такое и какие решения с помощью него принимают
- 2024-06-17 » Зачем вам знать потребности клиента
- 2024-06-11 » Что нового в работе Яндекс Метрики: полный обзор обновления
- 2024-06-11 » Поведенческие факторы ранжирования в Яндексе
- 2024-06-11 » Скорость загрузки сайта: почему это важно и как влияет на ранжирование
Все мы сидим в сточной канаве, но некоторые при этом смотрят на звезды Уайльд Оскар - (1854-1900) - английский писатель |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.