Создадим простое модальное окно с помощью jQuery
HTML:
Код
<button class="open-modal">Открыть окно</button>

<div class="modal-overlay"></div>
<div class="modal">
<div class="modal-content">
<span class="close-modal">×</span>
<h2>Мое модальное окно</h2>
<p>Здесь можно разместить любой контент.</p>
</div>
</div>


CSS:
Код
.modal-overlay {
display: none;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.5);
z-index: 1000;
}

.modal {
display: none;
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background: #fff;
padding: 20px;
z-index: 1001;
}


JavaScript (jQuery):
Код
$(document).ready(function() {
$('.open-modal').click(function(e) {
e.preventDefault();
$('.modal-overlay, .modal').fadeIn();
});

$('.modal-overlay, .close-modal').click(function() {
$('.modal-overlay, .modal').fadeOut();
});
});


Как это работает:
HTML: Создаем кнопку для открытия, затемненную подложку и само модальное окно.

CSS: Стилями скрываем элементы до клика, позиционируем их и задаем внешний вид.

JavaScript:
При клике на кнопку, подложка и окно плавно появляются. При клике на подложку или крестик закрытия они скрываются.


Что можно добавить:

Анимация:
Используйте библиотеки анимации для более плавного появления и исчезновения.
Формы: Добавьте форму для сбора данных внутри модального окна.
Динамическое содержимое: Загружайте содержимое окна динамически с помощью AJAX.


Совет:
Доступность: Убедитесь, что модальное окно доступно для всех пользователей.
Мобильные устройства: Оптимизируйте стили для разных размеров экранов.
Пример с формой: Внутри modal-content добавьте:

Код
<form>
<label for="name">Имя:</label>
<input type="text" id="name" name="name">
<button type="submit">Отправить</button>
</form>


Дополнительные ресурсы:
ArcticModal: Расширенный плагин для создания модальных окон: Ссылка

Комментарии

Минимальная длина комментария - 50 знаков. комментарии модерируются
HTMLSTART » CSS3 - JS - SVG Примеры » Прочие скрипты для сайтов » Создадим простое модальное окно с помощью jQuery