در این مطلب نمونه 3 برای لایت باکس با عنوان Modal Animation رو در اختیارتون قرار میدم. امیدوارم که بتونین از اون ایده بگیرید و یا اینکه از اون در سایتتون استفاده کنید.
کد HTML :
<div id="modal-container"> <div class="modal-background"> <div class="modal"> <h2>I'm a Modal</h2> <p>Hear me roar.</p> <svg class="modal-svg" xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" preserveAspectRatio="none"> <rect x="0" y="0" fill="none" width="226" height="162" rx="3" ry="3"></rect> </svg> </div> </div> </div> <div class="content"> <div class="buttons"> <div id="three" class="button">Uncovering</div> </div> </div>
کد CSS :
* { box-sizing: border-box; padding: 0; margin: 0; } html, body { min-height: 100%; height: 100%; background-image: url(http://theartmad.com/wp-content/uploads/Dark-Grey-Texture-Wallpaper-5.jpg); background-size: cover; background-position: top center; font-family: helvetica neue, helvetica, arial, sans-serif; font-weight: 200; } html.modal-active, body.modal-active { overflow: hidden; } .button { display: inline-block; text-align: center; padding: 10px 15px; margin: 10px; background: red; font-size: 18px; background-color: #efefef; border-radius: 3px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); cursor: pointer; } .button:hover { color: white; background: #009bd5; } #modal-container { position: fixed; display: table; height: 100%; width: 100%; top: 0; left: 0; transform: scale(0); z-index: 1; } #modal-container .modal-background { display: table-cell; background: rgba(0, 0, 0, 0.8); text-align: center; vertical-align: middle; } #modal-container .modal-background .modal { background: white; padding: 50px; display: inline-block; border-radius: 3px; font-weight: 300; position: relative; } #modal-container .modal-background .modal h2 { font-size: 25px; line-height: 25px; margin-bottom: 15px; } #modal-container .modal-background .modal p { font-size: 18px; line-height: 22px; } #modal-container .modal-background .modal .modal-svg { position: absolute; top: 0; left: 0; height: 100%; width: 100%; border-radius: 3px; } #modal-container .modal-background .modal .modal-svg rect { stroke: #fff; stroke-width: 2px; stroke-dasharray: 778; stroke-dashoffset: 778; } #modal-container.three { z-index: 0; transform: scale(1); } #modal-container.three .modal-background { background: rgba(0, 0, 0, 0.6); } #modal-container.three .modal-background .modal { animation: moveUp 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards; } #modal-container.three + .content { z-index: 1; animation: slideUpLarge 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards; } #modal-container.three.out .modal-background .modal { animation: moveDown 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards; } #modal-container.three.out + .content { animation: slideDownLarge 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards; } @keyframes slideUpLarge { 0% { transform: translateY(0%); } 100% { transform: translateY(-100%); } } @keyframes slideDownLarge { 0% { transform: translateY(-100%); } 100% { transform: translateY(0%); } } @keyframes moveUp { 0% { transform: translateY(150px); } 100% { transform: translateY(0); } } @keyframes moveDown { 0% { transform: translateY(0px); } 100% { transform: translateY(150px); } }
کد JS:
در این مطلب از jQuery استفاده شده است.
$('.button').click(function() { var buttonId = $(this).attr('id'); $('#modal-container').removeAttr('class').addClass(buttonId); $('body').addClass('modal-active'); }) $('#modal-container').click(function() { $(this).addClass('out'); $('body').removeClass('modal-active'); });
امیدوارم خوشتون بیاد.
موفق باشید. یا علی
اولین دیدگاه این پست رو تو بنویس !