Автор

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

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


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

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


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

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


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

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


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

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


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

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

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

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


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

О КОМПАНИИ

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

Close

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


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

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

Close