Автор

Модальное окно для сайта на 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>

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

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


vk.com/club.ssdru

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



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

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

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


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

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


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

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


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

Добавление небольших деталей может придать Вашему сайту завершенности. jQuery это прекрасная JavaScript библиотека, которая поможет довести мельчайшие детали до совершенства.


75 Публикаций

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

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


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

О КОМПАНИИ

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

Close

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


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

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

Close