Сегодня мы хотим поделиться скриптами модальных окон с красивыми эффектами. Различных вариаций очень много, так что каждый сможет найти своё.
Идея в том, что модальное окошко нужно показать при клике на кнопку (элемент страницы); далее последует приятная анимация и собственно появляется окно.
На версиях iOS < 6 мобильной версии Safari, могут быть проблемы с отображением.
Структура модального окна делится на контейнер и контент:
01 | < div class = "md-modal md-effect-1" id = "modal-1" > |
02 | < div class = "md-content" > |
05 | < p >This is a modal window. You can do the following things with it:</ p > |
07 | < li >< strong >Read:</ strong > Modal windows will probably tell you something important so don't forget to read what it says.</ li > |
08 | < li >< strong >Look:</ strong > modal windows enjoy a certain kind of attention; just look at it and appreciate its presence.</ li > |
09 | < li >< strong >Close:</ strong > click on the button below to close the modal.</ li > |
11 | < button class = "md-close" >Close me!</ button > |
18 | < div class = "md-overlay" ></ div > |
Основной контейнер будет отображаться или скрываться (используя класс “md-show”), а внутренний контент будет анимироваться. Оформляем окна следующими селекторами:
11 | backface- visibility : hidden ; |
12 | transform: translateX( -50% ) translateY( -50% ); |
28 | background : rgba( 143 , 27 , 15 , 0.8 ); |
32 | .md- show ~ .md-overlay { |
Для некоторых эффектов добавим класс html элементам. В особенности для применения 3D эффектов. Заметьте это, что мы применяем всё это к всей странице и контенту:
Для контроля различных эффектов, создадим специальные классы, ответственные за специфический эффект и анимацию. Пример индивидуального эффекта:
02 | .md- show .md-effect -5 ~ .md-overlay { |
03 | background : rgba( 0 , 127 , 108 , 0.8 ); |
06 | .md-effect -5 .md-content { |
07 | transform: scale( 0 ) rotate( 720 deg); |
12 | .md- show .md-effect -5 .md-content { |
13 | transform: scale( 1 ) rotate( 0 deg); |
У кнопок воспользуемся атрибутом data-* для того чтобы задать источник контента модального окна:
1 | < button class = "md-trigger" data-modal = "modal-5" >Newspaper</ button > |
Комментариев нет:
Отправить комментарий