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



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

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

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


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

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


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

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


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

Анимация с поддержкой CSS, которая заменяет обновление страницы при обновлении контента с помощью jQuery.


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

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


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