Автор

Модальное окно для сайта на jQuery

Модальное окно для сайта на jQuery


 

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

 

ДЕМО
ИСХОДНИКИ

 

Чтобы сделать модальное окно более гибким, мы добавили некоторые CSS3 Media Queries, чтобы сделать его и настроить для мобильного использования. И так, давайте приступим.

Шаг 1. HTML

Мы начнем с создания нового документа с помощью HTML5 разметки. Необходимо заметить, что мы также подключили  JQuery библиотеки (размещение в Google) в нижней части нашей страницы для оптимизации загрузки страниц.

<!DOCTYPE html>
<html>
<head>
 <!--Meta tags-->
 <meta charset="utf-8">
 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
 <!--Title-->
 <title>Модальное окно</title>
 <!--Stylesheets-->
 <link rel="stylesheet" href="css/styles.css">
 <!--HTML5 Shiv-->
 <!--[if lt IE 9]>
 <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
 <![endif]-->
</head>
<body>
 <!--jQuery-->
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
</body>
</html>

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

<body>
 <a href="#" id="button">Жми меня!</a>

С разметкой закончили, перейдем к следующему шагу.

Шаг 2. CSS

Для начала мы рассмотрим общие стили которые используются для демонстрации, и мелкие настройки.

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
 margin: 0;
 padding: 0;
 border: 0;
 font: inherit;
 vertical-align: baseline;
}
html {
 font-size: 62.5%;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
 display: block;
}
body {
 line-height: 1;
 }
ol, ul {
 list-style: none;
}
blockquote, q {
 quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
 content: '';
 content: none;
}
table {
 border-collapse: collapse;
 border-spacing: 0;
}
a {
 text-decoration:none;
}
body {
 font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;
 font-size:100%;
 background:#fff;
}

Далее создаем базовое модальное окно, мы будем использовать visibility:hidden; для того чтобы скрыть окно до момента нажатия кнопки.

#modal {
 width:360px;
 height:189px;
 padding:8px;
 background:rgba(0,0,0,.3);
 -webkit-border-radius:8px;
 -moz-border-radius:8px;
 border-radius:8px;
 position:absolute !important;
 top:50% !important;
 left:50% !important;
 margin-top:-94px !important;
 margin-left:-180px !important;
 z-index:101;
}

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

#heading {
 width:360px;
 height:44px;
 background-image: -webkit-linear-gradient(top, rgb(249, 249, 249), rgb(233, 233, 233));
 background-image: -moz-linear-gradient(top, rgb(249, 249, 249), rgb(233, 233, 233));
 background-image: -o-linear-gradient(top, rgb(249, 249, 249), rgb(233, 233, 233));
 background-image: -ms-linear-gradient(top, rgb(249, 249, 249), rgb(233, 233, 233));
 background-image: linear-gradient(top, rgb(249, 249, 249), rgb(233, 233, 233));
 filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f9f9f9', EndColorStr='#e9e9e9');
 border-bottom:1px solid #bababa;
 -webkit-box-shadow:
 inset 0px -1px 0px #fff,
 0px 1px 3px rgba(0,0,0,.08);
 -moz-box-shadow:
 inset 0px -1px 0px #fff,
 0px 1px 3px rgba(0,0,0,.08);
 box-shadow:
 inset 0px -1px 0px #fff,
 0px 1px 3px rgba(0,0,0,.08);
 -webkit-border-radius:4px 4px 0px 0px;
 -moz-border-radius:4px 4px 0px 0px;
 border-radius:4px 4px 0px 0px;
 font-size:14px;
 font-weight:bold;
 text-align:center;
 line-height:44px;
 color:#444444;
 text-shadow:0px 1px 0px #fff;
}

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

#content {
 width:360px;
 height:144px;
 background:#fcfcfc;
 -webkit-box-shadow:0px 1px 3px rgba(0,0,0,.25);
 -moz-box-shadow:0px 1px 3px rgba(0,0,0,.25);
 box-shadow:0px 1px 3px rgba(0,0,0,.25);
 -webkit-border-radius:0px 0px 4px 4px;
 -moz-border-radius:0px 0px 4px 4px;
 border-radius:0px 0px 4px 4px;
}
#content p {
 font-size:13px;
 font-weight:normal;
 text-align:center;
 line-height:22px;
 color:#555555;
 width:100%;
 float: left;
 margin:19px 0;
}

Теперь рассмотрим кнопки выбора в модальном окне, здесь немного интереснее, мы добавим тень, и простые иконки которые позволят нам добавить большего реализма и визуально оформить кнопки.

.button {
 width:138px;
 height:33px;
 font-size:13px;
 font-weight:bold;
 line-height:33px;
 color:#fff;
 text-shadow:0px 1px 0px rgba(0,0,0,.2);
 -webkit-border-radius:3px;
 -moz-border-radius:3px;
 border-radius:3px;
 -webkit-box-shadow:
 inset 0px 1px 0px rgba(255,255,255,.5),
 0px 1px 2px rgba(0,0,0,.3);
 -moz-box-shadow:
 inset 0px 1px 0px rgba(255,255,255,.5),
 0px 1px 2px rgba(0,0,0,.3);
 box-shadow:
 inset 0px 1px 0px rgba(255,255,255,.5),
 0px 1px 2px rgba(0,0,0,.3);
 float:left;
}
.button img {
 float:left;
 width:33px;
 height:33px;
}
.button.green {
 background: -webkit-linear-gradient(top, rgba(170,212,79,1) 0%,rgba(116,185,49,1) 90%,rgba(106,173,45,1) 95%,rgba(96,157,41,1) 100%);
 background: -moz-linear-gradient(top, rgba(170,212,79,1) 0%,rgba(116,185,49,1) 90%,rgba(106,173,45,1) 95%,rgba(96,157,41,1) 100%);
 background: -o-linear-gradient(top, rgba(170,212,79,1) 0%,rgba(116,185,49,1) 90%,rgba(106,173,45,1) 95%,rgba(96,157,41,1) 100%);
 background: -ms-linear-gradient(top, rgba(170,212,79,1) 0%,rgba(116,185,49,1) 90%,rgba(106,173,45,1) 95%,rgba(96,157,41,1) 100%);
 background: linear-gradient(top, rgba(170,212,79,1) 0%,rgba(116,185,49,1) 90%,rgba(106,173,45,1) 95%,rgba(96,157,41,1) 100%);
 filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#aad44f', endColorstr='#609d29',GradientType=0 );
 border:1px solid #5b8821;
 margin:0 5px 0 35px;
}
.button.red {
 background: -webkit-linear-gradient(top, rgba(248,114,136,1) 0%,rgba(243,71,85,1) 90%,rgba(225,65,77,1) 95%,rgba(206,59,70,1) 100%);
 background: -moz-linear-gradient(top, rgba(248,114,136,1) 0%,rgba(243,71,85,1) 90%,rgba(225,65,77,1) 95%,rgba(206,59,70,1) 100%);
 background: -o-linear-gradient(top, rgba(248,114,136,1) 0%,rgba(243,71,85,1) 90%,rgba(225,65,77,1) 95%,rgba(206,59,70,1) 100%);
 background: -ms-linear-gradient(top, rgba(248,114,136,1) 0%,rgba(243,71,85,1) 90%,rgba(225,65,77,1) 95%,rgba(206,59,70,1) 100%);
 background: linear-gradient(top, rgba(248,114,136,1) 0%,rgba(243,71,85,1) 90%,rgba(225,65,77,1) 95%,rgba(206,59,70,1) 100%);
 filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f87288', endColorstr='#ce3b46',GradientType=0 );
 border:1px solid #b0333e;
 margin:0 35px 0 5px;
}

Со стилями мы закончили, теперь рассмотрим некоторые параметры скрипта.

Шаг 3. JavaScript

Теперь мы должны вернуться к нашему HTML-документу и добавить следующие строки в нижнюю часть нашего документа, в котором мы ссылаемся Reveal-плагин. Вот некоторые параметры.

<script type="text/javascript">
 $(document).ready(function() {
 $('#button').click(function(e) { // Кнопка, которая активирует наши модальные окна
 $('#modal').reveal({ // Пункт, который будет открывать и раскрывать окно
 animation: 'fade', // Анимация появления
 animationspeed: 600, // Скорость анимации
 closeonbackgroundclick: true, // Нажатие на фон, чтобы закрыть окно
 dismissmodalclass: 'close' // Класс, который будет закрывать модальное окно
 });
 return false;
 });
 });
</script>

Вот и все. Готово!

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

Многие материалы на сайте взяты из блогов: "Все для веб-дизайнера Rudebox", "A free library of HTML, CSS, JS nuggets Codyhouse" - полностью переведен и представлен в ознакомительных целях!

vk.com/club.ssdru

Подписывайтесь на нашу группу в контакте vk.com/club.ssdru



Статьи по темеjQuery

Модальное окно для сайта на jQuery

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


Модальное окно для сайта на jQuery

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


Модальное окно для сайта на jQuery

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


Модальное окно для сайта на jQuery

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


Раскрутка в соцсетях

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


Перейти в Блог

Надёжный хостинг

С нами хостинг удобен и прост, как диван у вас дома. Вы с комфортом размещаетесь, а все внутренние пружины мы берем на себя.

Бесплатный тестовый период, ежедневные бэкапы, неограниченный трафик, акции с бонусами... Конечно, у нас все это есть.


Перейти на хостинг

О КОМПАНИИ

Studio Design существует с 2001 года. Основной нашей деятельностью до 2007 года было видеопроизводство ( видеореклама и документальные фильмы, о чем подробно описано в нашем блоге ). С 2007 года, вот уже как лет, наша основная специфика - это создание сайтов для бизнеса или частной деятельности, веб дизайн, а также поддержка и администрирование готовых проектов. Каждая выполненная нами работа - это уникальный, а самое главное, адаптивный под все современные мобильные устройства дизайн сайта. Мы готовы создать сайт с нуля для каждого клиента с любого уголка России! Мы поможем Вам в создании, как одностраничных сайтов – визиток, так и крупных интернет магазинов или корпоративных сайтов. А все наши работы, большинство из которых действуют и по сей день!

Close

Целовальников Сергей


Веб-дизайн, HTML5, CSS3, jQuery, JavaScript, Верстка.

Верстальщик с большим опытом работы. Занимаюсь созданием сайтов с 2005 года. Постоянно обучаюсь и совершенствую свои навыки. Веду свои проекты, в том числе и данный блог.

Close