Модальное окно на CSS3

3604
8.4 из 10
Проголосовало: 5






Для того, чтобы создать модальное окно на CSS3, не нужно каких-либо особых свойств и HTML тегов. Здесь делается все просто: мы на странице создаем обычный якорь, по нажатию которого появляется модальное окно.
Рассмотрим подробнее:

Code
<center><a href="#modalWindow" id="modalUrl">Открыть модальное окно, созданное на CSS3!</a> </center>
   
  <a href="#modal" class="overlay" id="modalWindow"></a>
  <div class="popup">

  Это модальное окно, созданное на CSS3! гуляю на webo4ka.ru<br>
  <br>
  <a class="close" href="#close">Закрыть</a>
  </div>


CSS

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

Code

.overlay {
  background-color: #DFDFDF; /* Цвет фона */
  opacity: 0; /* Изначально непрозрачный */
  position: fixed; /* Фиксированное позиционирование */
  right: 0; /* Справа 0 */
  top: 0; /* Сверху 0 */
  left: 0; /* Слева 0 */
  bottom: 0; /* Снизу 0 */
  visibility: hidden; /* Изначально невидимый */

  /* transition старт */
  -webkit-transition:All 1s ease;
  -moz-transition:All 1s ease;
  -o-transition:All 1s ease;
}


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

Code

.overlay:target {
  visibility: visible; /* Делает видимым */
  opacity: 1; /* Фон становится полностью прозрачным */
}


Теперь стоит оформить сам вид модального окна:

Code

.popup {
  background-color: #478CFB; /* Фон */
  padding: 20px; /* Внутренние отступы */
  position: fixed; /* Фиксированное расположение */
  visibility: hidden; /* Изначально - спрятан */
  z-index: 10; /* z-index */
  color:#fff; /* Цвет */
  font: bold 12pt "Trebuchet MS", tahoma, verdana, arial narrow, arial; /* Толщина, размер и семейство шрифта */
}

.popup a {
  color:#fff; /* Цвет */
  font: bold 12pt "Trebuchet MS", tahoma, verdana, arial narrow, arial; /* Толщина, размер и семейство шрифта */
}


Теперь же, как сделать, что бы появилось модальное окно, а фон стал прозрачным и одного цвета? Здесь применяет тот же псевдокласс :target:

Code
.overlay:target+.popup {
  top: 30%; /* Расположение */
  left: 30%; /* Расположение */
  opacity: 1; /* Убирает прозрачность */
  visibility: visible; /* Делает видимым */
}


Вот и все. Как и оказалось, создать модальное окно на CSS3 - пустяк. Но, здесь есть одна серьезная проблема: это модальное окно не будет работать во многих старых браузерах, к примеру, в старых IE <9, а там без JS уже никуда.
Автор публикации: Загрузка
Загрузка
Вовчик, это его n материал
  • Всего комментариев: 1

Admin9185
0
Admin9185 написал: Написано 30 Октября 2012 в 19:23
Комментарий №1
[удалено, в в тексте мат]

  • Оставить комментарий:
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
Меню сайта
Категории
Для помощи создания сайта uCoz 25
Скрипты и модификации для Ucoz 2118
Шаблоны форумов Ucoz 28
Шаблоны сайтов Ucoz 431
Авторство Webo4ki 309
php скрипты для ucoz 57
Графика для uCoz 40
Мини-чат
Последние комментарии
  • CbIPoK2513 написал:
  • Мой вариант выдаёт аватарку картинкой, а не текстом.
  • waak написал:
  • и ещё забыл добавить что использую модуль каталог сайтов
  • waak написал:
  • Почему у меня он перелистывает в верх а не вниз и если это первая песня на стр то он её по кругу гоняет а не переходит к последней
    и как сделать стоп по клику на трек который играет?
  • Acht написал:
  • Тест
    Мда, у меня тоже не работает. Или нужно ждать обновление?
    Последние темы
    Опрос
    465
    А
    Р
    Оцените новый дизай:)
    Статистика
    Анализ интернет сайта
    0
    онлайн
    0
    наших
    0
    чужих
    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    0
    Сегодня были
    Топ пользователей: