문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
|
wiki:howto:how_to_-_css_js_modal [2021/04/09 11:10] emblim98 |
wiki:howto:how_to_-_css_js_modal [2023/01/13 18:44] (현재) |
||
|---|---|---|---|
| 줄 17: | 줄 17: | ||
| \\ | \\ | ||
| Step 1) Add %%HTML%%:\\ | Step 1) Add %%HTML%%:\\ | ||
| - | ====예제==== | + | ====HTML 예제==== |
| <code html> | <code html> | ||
| < | < | ||
| 줄 33: | 줄 33: | ||
| \\ | \\ | ||
| Step 2) Add %%CSS%%:\\ | Step 2) Add %%CSS%%:\\ | ||
| - | ====예제==== | + | ====CSS 예제==== |
| <code css> | <code css> | ||
| < | < | ||
| 줄 76: | 줄 76: | ||
| \\ | \\ | ||
| Step 3) Add %%JavaScript%%: | Step 3) Add %%JavaScript%%: | ||
| - | ====예제==== | + | ====JavaScript |
| <code javascript> | <code javascript> | ||
| < | < | ||
| 줄 102: | 줄 102: | ||
| </ | </ | ||
| + | =====Add Header and Footer===== | ||
| + | modal-header, | ||
| + | ====HTML 예제==== | ||
| + | <code html> | ||
| + | < | ||
| + | <!-- Trigger/ | ||
| + | <button id=" | ||
| + | <!-- The Modal --> | ||
| + | <div id=" | ||
| + | <!-- Modal content --> | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <span class=" | ||
| + | < | ||
| + | </ | ||
| + | <div class=" | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | <div class=" | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | \\ | ||
| + | modal 헤더, 바디 그리고 풋터에 스타일을 지정하고 modal에 애니메이션 슬라이드를 추가합니다.\\ | ||
| + | <code css> | ||
| + | < | ||
| + | <html lang=" | ||
| + | |||
| + | < | ||
| + | <meta name=" | ||
| + | < | ||
| + | body {font-family: | ||
| + | /* The Modal (background) */ | ||
| + | .modal { | ||
| + | display: none; /* Hidden by default */ | ||
| + | position: fixed; | ||
| + | z-index: 1; /* Sit on top */ | ||
| + | padding-top: | ||
| + | left: 0; | ||
| + | top: 0; | ||
| + | width: 100%; /* Full width */ | ||
| + | height: 100%; /* Full height */ | ||
| + | overflow: auto; /* Enable scroll if needed */ | ||
| + | background-color: | ||
| + | background-color: | ||
| + | } | ||
| + | .modal-content { | ||
| + | position: relative; | ||
| + | background-color: | ||
| + | margin: auto; | ||
| + | padding: 0; | ||
| + | border: 2px solid crimson; | ||
| + | width: 80%; | ||
| + | box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); | ||
| + | -webkit-animation-name: | ||
| + | -webkit-animation-duration: | ||
| + | animation-name: | ||
| + | animation-duration: | ||
| + | } | ||
| + | /* Add Animation */ | ||
| + | @-webkit-keyframes animatetop { | ||
| + | from {top: -300px; opacity: 0} | ||
| + | to {top: 0; opacity: 1} | ||
| + | } | ||
| + | @keyframes animatetop { | ||
| + | from {top: -300px; opacity: 0} | ||
| + | to {top: 0; opacity: 1} | ||
| + | } | ||
| + | /* The Close Button */ | ||
| + | .close { | ||
| + | color: white; | ||
| + | float: right; | ||
| + | font-size: 28px; | ||
| + | font-weight: | ||
| + | } | ||
| + | .close: | ||
| + | color: #000; | ||
| + | text-decoration: | ||
| + | cursor: pointer; | ||
| + | } | ||
| + | /* Modal Header */ | ||
| + | .modal-header { | ||
| + | padding: 2px 16px; | ||
| + | background-color: | ||
| + | color: white; | ||
| + | } | ||
| + | /* Modal Body */ | ||
| + | .modal-body {padding: 2px 16px;} | ||
| + | /* Modal Footer */ | ||
| + | .modal-footer { | ||
| + | padding: 2px 16px; | ||
| + | background-color: | ||
| + | color: white; | ||
| + | } | ||
| + | </ | ||
| + | </ | ||
| + | < | ||
| + | < | ||
| + | <!-- Trigger/ | ||
| + | <button id=" | ||
| + | <!-- The Modal --> | ||
| + | <div id=" | ||
| + | <!-- Modal content --> | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <span class=" | ||
| + | < | ||
| + | </ | ||
| + | <div class=" | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | <div class=" | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | < | ||
| + | // Get the modal | ||
| + | var modal = document.getElementById(" | ||
| + | // Get the button that opens the modal | ||
| + | var btn = document.getElementById(" | ||
| + | // Get the < | ||
| + | var span = document.getElementsByClassName(" | ||
| + | // When the user clicks the button, open the modal | ||
| + | btn.onclick = function () { | ||
| + | modal.style.display = " | ||
| + | } | ||
| + | // When the user clicks on < | ||
| + | span.onclick = function () { | ||
| + | modal.style.display = " | ||
| + | } | ||
| + | // When the user clicks anywhere outside of the modal, close it | ||
| + | window.onclick = function (event) { | ||
| + | if (event.target == modal) { | ||
| + | modal.style.display = " | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | =====Bottom Modal (" | ||
| + | 하단에서 슬라이드 되는 화면 전체 너비의 모달을 생성하는 방법에 관한 예제 | ||
| + | <code css> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <meta name=" | ||
| + | < | ||
| + | body {font-family: | ||
| + | |||
| + | /* The Modal (background) */ | ||
| + | .modal { | ||
| + | display: none; /* Hidden by default */ | ||
| + | position: fixed; /* Stay in place */ | ||
| + | z-index: 1; /* Sit on top */ | ||
| + | left: 0; | ||
| + | top: 0; | ||
| + | width: 100%; /* Full width */ | ||
| + | height: 100%; /* Full height */ | ||
| + | overflow: auto; /* Enable scroll if needed */ | ||
| + | background-color: | ||
| + | background-color: | ||
| + | -webkit-animation-name: | ||
| + | -webkit-animation-duration: | ||
| + | animation-name: | ||
| + | animation-duration: | ||
| + | } | ||
| + | |||
| + | /* Modal Content */ | ||
| + | .modal-content { | ||
| + | position: fixed; | ||
| + | bottom: 0; | ||
| + | background-color: | ||
| + | width: 100%; | ||
| + | -webkit-animation-name: | ||
| + | -webkit-animation-duration: | ||
| + | animation-name: | ||
| + | animation-duration: | ||
| + | } | ||
| + | |||
| + | /* The Close Button */ | ||
| + | .close { | ||
| + | color: white; | ||
| + | float: right; | ||
| + | font-size: 28px; | ||
| + | font-weight: | ||
| + | } | ||
| + | |||
| + | .close: | ||
| + | .close: | ||
| + | color: #000; | ||
| + | text-decoration: | ||
| + | cursor: pointer; | ||
| + | } | ||
| + | |||
| + | .modal-header { | ||
| + | padding: 2px 16px; | ||
| + | background-color: | ||
| + | color: white; | ||
| + | } | ||
| + | |||
| + | .modal-body {padding: 2px 16px;} | ||
| + | |||
| + | .modal-footer { | ||
| + | padding: 2px 16px; | ||
| + | background-color: | ||
| + | color: white; | ||
| + | } | ||
| + | |||
| + | /* Add Animation */ | ||
| + | @-webkit-keyframes slideIn { | ||
| + | from {bottom: -300px; opacity: 0} | ||
| + | to {bottom: 0; opacity: 1} | ||
| + | } | ||
| + | |||
| + | @keyframes slideIn { | ||
| + | from {bottom: -300px; opacity: 0} | ||
| + | to {bottom: 0; opacity: 1} | ||
| + | } | ||
| + | |||
| + | @-webkit-keyframes fadeIn { | ||
| + | from {opacity: 0} | ||
| + | to {opacity: 1} | ||
| + | } | ||
| + | |||
| + | @keyframes fadeIn { | ||
| + | from {opacity: 0} | ||
| + | to {opacity: 1} | ||
| + | } | ||
| + | </ | ||
| + | </ | ||
| + | < | ||
| + | |||
| + | < | ||
| + | |||
| + | <!-- Trigger/ | ||
| + | <button id=" | ||
| + | |||
| + | <!-- The Modal --> | ||
| + | <div id=" | ||
| + | |||
| + | <!-- Modal content --> | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <span class=" | ||
| + | < | ||
| + | </ | ||
| + | <div class=" | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | <div class=" | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | |||
| + | < | ||
| + | // Get the modal | ||
| + | var modal = document.getElementById(" | ||
| + | |||
| + | // Get the button that opens the modal | ||
| + | var btn = document.getElementById(" | ||
| + | |||
| + | // Get the < | ||
| + | var span = document.getElementsByClassName(" | ||
| + | |||
| + | // When the user clicks the button, open the modal | ||
| + | btn.onclick = function() { | ||
| + | modal.style.display = " | ||
| + | } | ||
| + | |||
| + | // When the user clicks on < | ||
| + | span.onclick = function() { | ||
| + | modal.style.display = " | ||
| + | } | ||
| + | |||
| + | // When the user clicks anywhere outside of the modal, close it | ||
| + | window.onclick = function(event) { | ||
| + | if (event.target == modal) { | ||
| + | modal.style.display = " | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | </ | ||
| + | </ | ||