Create A 3D Perspective Modal Window with jQuery and CSS3
| File Size: | 2.84 KB |
|---|---|
| Views Total: | 2661 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
A small jQuery script which allows you to open a 3D perspective modal window from the right side of your browser window. Built with CSS3 transform, transition and perspective properties.
How to use it:
1. Include Ionicons icon font in the head section of your web page (Optional. Required for modal close icon).
<link rel="stylesheet" href="//code.ionicframework.com/ionicons/1.5.2/css/ionicons.min.css">
2. Create the Html for a modal window as follow.
<div class="modal"> <a href="#" class="close"><i class="ion-close"></i></a>
<figure> <img src="1.jpg" alt="" />
<figcaption>
<h1>Perspective Modal</h1>
<p>Text Content</p>
</figcaption>
</figure>
</div>
3. Create an element to toggle the modal window.
<a href="#" class="open ">Close Modal</a>
4. The required CSS/CSS3 styles for the 3D perspective modal window.
.modal {
-webkit-transition: all 300ms ease;
transition: all 300ms ease;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
position: fixed;
top: 10%;
right: 3rem;
width: 18rem;
height: 35rem;
background-color: #2c3e50;
color: white;
-webkit-transform: perspective(300px) rotateY(-5deg);
transform: perspective(300px) rotateY(-5deg);
-webkit-transform-origin: middle right;
-ms-transform-origin: middle right;
transform-origin: middle right;
-webkit-font-smoothing: antialiased;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
.modal:after {
content: '';
width: 100%;
height: 1rem;
position: absolute;
left: 0;
bottom: -3rem;
background-image: -webkit-radial-gradient(ellipse, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0) 60%);
background-image: radial-gradient(ellipse, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0) 60%);
}
.modal .close {
position: absolute;
top: 0;
right: 0;
width: 3rem;
height: 3rem;
line-height: 3rem;
font-size: 2rem;
background-color: rgba(0, 0, 0, 0.5);
text-align: center;
}
.modal figcaption { padding: 2rem; }
.modal figcaption p { line-height: 1.2rem; }
.closed {
-webkit-transition: all 300ms ease;
transition: all 300ms ease;
right: -25rem;
}
5. Include the necessary jQuery library at the bottom of the web page.
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
6. The Javascript to open the modal window on page loaded.
var openCloseBtn = $('.open');
var openCloseText = $('span', '.open');
var modalWindow = $('.modal');
var modalCloseBtn = $('.close');
openCloseBtn.click(function(){
openCloseModal(!modalWindow.hasClass('closed'));
});
modalCloseBtn.click(function(){
openCloseModal(true);
});
function openCloseModal(isOpen){
if(isOpen){
modalWindow.addClass('closed');
openCloseText.html('Open Modal');
} else{
modalWindow.removeClass('closed');
openCloseText.html('Close Modal');
}
}
This awesome jQuery plugin is developed by SebL. For more Advanced Usages, please check the demo page or visit the official website.











