Last active
July 19, 2017 09:38
-
-
Save Dexdot/bda054099fc7eef07bbafde40a225c1f to your computer and use it in GitHub Desktop.
SVG Modal CodyHouse
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <div class="cd-modal" data-modal="modal-trigger"> | |
| <div class="cd-svg-bg" | |
| data-step1="M-59.9,540.5l-0.9-1.4c-0.1-0.1,0-0.3,0.1-0.3L864.8-41c0.1-0.1,0.3,0,0.3,0.1l0.9,1.4c0.1,0.1,0,0.3-0.1,0.3L-59.5,540.6 C-59.6,540.7-59.8,540.7-59.9,540.5z" | |
| data-step2="M33.8,690l-188.2-300.3c-0.1-0.1,0-0.3,0.1-0.3l925.4-579.8c0.1-0.1,0.3,0,0.3,0.1L959.6,110c0.1,0.1,0,0.3-0.1,0.3 L34.1,690.1C34,690.2,33.9,690.1,33.8,690z" | |
| data-step3="M-465.1,287.5l-0.9-1.4c-0.1-0.1,0-0.3,0.1-0.3L459.5-294c0.1-0.1,0.3,0,0.3,0.1l0.9,1.4c0.1,0.1,0,0.3-0.1,0.3 l-925.4,579.8C-464.9,287.7-465,287.7-465.1,287.5z" | |
| data-step4="M-329.3,504.3l-272.5-435c-0.1-0.1,0-0.3,0.1-0.3l925.4-579.8c0.1-0.1,0.3,0,0.3,0.1l272.5,435c0.1,0.1,0,0.3-0.1,0.3 l-925.4,579.8C-329,504.5-329.2,504.5-329.3,504.3z" | |
| data-step5="M341.1,797.5l-0.9-1.4c-0.1-0.1,0-0.3,0.1-0.3L1265.8,216c0.1-0.1,0.3,0,0.3,0.1l0.9,1.4c0.1,0.1,0,0.3-0.1,0.3L341.5,797.6 C341.4,797.7,341.2,797.7,341.1,797.5z" | |
| data-step6="M476.4,1013.4L205,580.3c-0.1-0.1,0-0.3,0.1-0.3L1130.5,0.2c0.1-0.1,0.3,0,0.3,0.1l271.4,433.1c0.1,0.1,0,0.3-0.1,0.3 l-925.4,579.8C476.6,1013.6,476.5,1013.5,476.4,1013.4z"> | |
| <svg height="100%" width="100%" preserveAspectRatio="none" viewBox="0 0 800 500"> | |
| <title>SVG Modal background</title> | |
| <path id="cd-changing-path-1" d="M-59.9,540.5l-0.9-1.4c-0.1-0.1,0-0.3,0.1-0.3L864.8-41c0.1-0.1,0.3,0,0.3,0.1l0.9,1.4c0.1,0.1,0,0.3-0.1,0.3L-59.5,540.6 C-59.6,540.7-59.8,540.7-59.9,540.5z"/> | |
| <path id="cd-changing-path-2" d="M-465.1,287.5l-0.9-1.4c-0.1-0.1,0-0.3,0.1-0.3L459.5-294c0.1-0.1,0.3,0,0.3,0.1l0.9,1.4c0.1,0.1,0,0.3-0.1,0.3 l-925.4,579.8C-464.9,287.7-465,287.7-465.1,287.5z"/> | |
| <path id="cd-changing-path-3" d="M341.1,797.5l-0.9-1.4c-0.1-0.1,0-0.3,0.1-0.3L1265.8,216c0.1-0.1,0.3,0,0.3,0.1l0.9,1.4c0.1,0.1,0,0.3-0.1,0.3L341.5,797.6 C341.4,797.7,341.2,797.7,341.1,797.5z"/> | |
| </svg> | |
| </div> | |
| <div class="cd-modal-content"> | |
| <p> | |
| Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad modi repellendus, optio eveniet eligendi molestiae? Fugiat, temporibus! A rerum pariatur neque laborum earum, illum voluptatibus eum voluptatem fugiat, porro animi tempora? Sit harum nulla, nesciunt molestias, iusto aliquam aperiam est qui possimus reprehenderit ipsam ea aut assumenda inventore iste! Animi quaerat facere repudiandae earum quisquam accusamus tempora, delectus nesciunt, provident quae aliquam, voluptatum beatae quis similique in maiores repellat eligendi voluptas veniam optio illum vero! Eius, dignissimos esse eligendi veniam. | |
| </p> | |
| <p> | |
| Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad modi repellendus, optio eveniet eligendi molestiae? Fugiat, temporibus! A rerum pariatur neque laborum earum, illum voluptatibus eum voluptatem fugiat, porro animi tempora? Sit harum nulla, nesciunt molestias, iusto aliquam aperiam est qui possimus reprehenderit ipsam ea aut assumenda inventore iste! Animi quaerat facere repudiandae earum quisquam accusamus tempora, delectus nesciunt, provident quae aliquam, voluptatum beatae quis similique in maiores repellat eligendi voluptas veniam optio illum vero! Eius, dignissimos esse eligendi veniam. | |
| </p> | |
| </div> <!-- cd-modal-content --> | |
| <a href="#0" class="modal-close">Close</a> | |
| </div> <!-- cd-modal --> | |
| <div class="cd-cover-layer"></div> <!-- .cd-cover-layer --> | |
| svg { | |
| max-width: 100%; | |
| } | |
| /* -------------------------------- | |
| Modal Window | |
| -------------------------------- */ | |
| .cd-modal { | |
| position: fixed; | |
| z-index: 2; | |
| top: 0; | |
| left: 0; | |
| height: 100%; | |
| width: 100%; | |
| visibility: hidden; | |
| -webkit-transition: visibility 0s 0.6s; | |
| -moz-transition: visibility 0s 0.6s; | |
| transition: visibility 0s 0.6s; | |
| } | |
| .cd-modal svg { | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| } | |
| .cd-modal svg > path { | |
| fill: #1f4c74; | |
| } | |
| .cd-modal .modal-close { | |
| /* 'X' icon */ | |
| position: absolute; | |
| z-index: 1; | |
| top: 20px; | |
| right: 5%; | |
| height: 50px; | |
| width: 50px; | |
| border-radius: 50%; | |
| background: rgba(0, 0, 0, 0.3) url(../img/cd-icon-close.svg) no-repeat center center; | |
| /* image replacement */ | |
| overflow: hidden; | |
| text-indent: 100%; | |
| white-space: nowrap; | |
| /* Force hardware acceleration*/ | |
| -webkit-transform: translateZ(0); | |
| -moz-transform: translateZ(0); | |
| -ms-transform: translateZ(0); | |
| -o-transform: translateZ(0); | |
| transform: translateZ(0); | |
| -webkit-backface-visibility: hidden; | |
| backface-visibility: hidden; | |
| visibility: hidden; | |
| opacity: 0; | |
| -webkit-transform: scale(0); | |
| -moz-transform: scale(0); | |
| -ms-transform: scale(0); | |
| -o-transform: scale(0); | |
| transform: scale(0); | |
| -webkit-transition: -webkit-transform 0.3s 0s, visibility 0s 0.3s, opacity 0.3s 0s; | |
| -moz-transition: -moz-transform 0.3s 0s, visibility 0s 0.3s, opacity 0.3s 0s; | |
| transition: transform 0.3s 0s, visibility 0s 0.3s, opacity 0.3s 0s; | |
| } | |
| .no-touch .cd-modal .modal-close:hover { | |
| background-color: rgba(0, 0, 0, 0.5); | |
| } | |
| .cd-modal.modal-is-visible { | |
| visibility: visible; | |
| -webkit-transition: visibility 0s 0s; | |
| -moz-transition: visibility 0s 0s; | |
| transition: visibility 0s 0s; | |
| } | |
| .cd-modal.modal-is-visible .modal-close { | |
| visibility: visible; | |
| opacity: 1; | |
| -webkit-transition: -webkit-transform 0.3s 0s, visibility 0s 0s, opacity 0.3s 0s; | |
| -moz-transition: -moz-transform 0.3s 0s, visibility 0s 0s, opacity 0.3s 0s; | |
| transition: transform 0.3s 0s, visibility 0s 0s, opacity 0.3s 0s; | |
| -webkit-transform: scale(1); | |
| -moz-transform: scale(1); | |
| -ms-transform: scale(1); | |
| -o-transform: scale(1); | |
| transform: scale(1); | |
| } | |
| .cd-modal-content { | |
| position: relative; | |
| height: 100vh; | |
| overflow-y: auto; | |
| padding: 3em 5% 4em; | |
| opacity: 0; | |
| -webkit-transform: translateY(50px); | |
| -moz-transform: translateY(50px); | |
| -ms-transform: translateY(50px); | |
| -o-transform: translateY(50px); | |
| transform: translateY(50px); | |
| -webkit-transition: opacity 0.3s 0s, -webkit-transform 0.3s 0s; | |
| -moz-transition: opacity 0.3s 0s, -moz-transform 0.3s 0s; | |
| transition: opacity 0.3s 0s, transform 0.3s 0s; | |
| -webkit-font-smoothing: antialiased; | |
| -moz-osx-font-smoothing: grayscale; | |
| } | |
| .cd-modal-content p { | |
| color: #f2f2f2; | |
| line-height: 1.6; | |
| margin: 2em 0; | |
| } | |
| .modal-is-visible .cd-modal-content { | |
| opacity: 1; | |
| -webkit-transform: translateY(0); | |
| -moz-transform: translateY(0); | |
| -ms-transform: translateY(0); | |
| -o-transform: translateY(0); | |
| transform: translateY(0); | |
| -webkit-overflow-scrolling: touch; | |
| -webkit-transition: opacity 0.3s 0.3s, -webkit-transform 0.3s 0.3s; | |
| -moz-transition: opacity 0.3s 0.3s, -moz-transform 0.3s 0.3s; | |
| transition: opacity 0.3s 0.3s, transform 0.3s 0.3s; | |
| } | |
| @media only screen and (min-width: 768px) { | |
| .cd-modal-content { | |
| padding: 3em 10% 4em; | |
| } | |
| .cd-modal-content p { | |
| font-size: 2.4rem; | |
| } | |
| } | |
| /* -------------------------------- | |
| Cover Layer - hide main content when modal is fired | |
| -------------------------------- */ | |
| .cd-cover-layer { | |
| position: fixed; | |
| z-index: 1; | |
| top: 0; | |
| left: 0; | |
| height: 100%; | |
| width: 100%; | |
| background-color: #f2f2f2; | |
| visibility: hidden; | |
| opacity: 0; | |
| -webkit-transition: opacity 0.3s 0.3s, visibility 0s 0.6s; | |
| -moz-transition: opacity 0.3s 0.3s, visibility 0s 0.6s; | |
| transition: opacity 0.3s 0.3s, visibility 0s 0.6s; | |
| } | |
| .cd-cover-layer.modal-is-visible { | |
| opacity: 1; | |
| visibility: visible; | |
| -webkit-transition: opacity 0.3s 0s, visibility 0s 0s; | |
| -moz-transition: opacity 0.3s 0s, visibility 0s 0s; | |
| transition: opacity 0.3s 0s, visibility 0s 0s; | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment