Awesome Grid Hover Effects with jQuery and CSS3
| File Size: | 428 KB |
|---|---|
| Views Total: | 7868 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
Makes uses of jQuery and CSS3 transitions & keyframes to create a image grid with awesome caption hover effects like slide, twist, fade and much more.
How to use it:
1. Include the jQuery library and other required resources in your document.
<link href="//fonts.googleapis.com/css?family=Roboto:400,100,300,900" rel="stylesheet"> <link href="reset.css" rel="stylesheet"> <script src="prefixfree.min.js"></script> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
2. The markup Html structure to create a grid of images with different caption hover effects.
<div class="container one">
<img alt="" src="1.jpg">
<div>
<span>
<h2>SLIDE Effect</h2>
Image caption 1
</span>
</div>
</div>
<div class="container two">
<img alt="" src="2.jpg">
<div>
<span>
<h2>SLIDE Effect 2</h2>
Image caption 1
</span>
</div>
</div>
<div class="container three">
<img alt="" src="3.jpg">
<div>
<span>
<h2>FADE Effect</h2>
Image caption 3
</span>
</div>
</div>
<div class="container four">
<img alt="" src="4.jpg">
<div>
<span>
<h2>TWIST Effect</h2>
Image caption 4
</span>
</div>
</div>
3. The required CSS/CSS3 to style the image grid. You can tweak the caption effects or create your own effects by editing the following styles.
<style>
body {
text-align: center;
font-family: "Roboto", sans-serif;
}
.container {
vertical-align: top;
display: inline-block;
position: relative;
background: #efefef;
background-size: cover;
width: 300px;
height: 200px;
overflow: hidden;
margin-right: -0.25em;
}
.container.one div.over {
-webkit-animation: slideLeft 300ms ease-in-out;
-webkit-animation-fill-mode: forwards;
}
.container.one div.out {
-webkit-animation: slideLeftOut 300ms ease-in-out;
-webkit-animation-fill-mode: forwards;
}
.container.two div.over {
-webkit-animation: slideUp 300ms ease-in-out;
-webkit-animation-fill-mode: forwards;
}
.container.two div.out {
-webkit-animation: slideUpOut 300ms ease-in-out;
-webkit-animation-fill-mode: forwards;
}
.container.three div {
left: 0;
opacity: 0;
}
.container.three:hover div { opacity: 1; }
.container.four div {
left: 0;
opacity: 0;
-webkit-transform: rotate(180deg) scale(0.2);
}
.container.four:hover div {
opacity: 1;
-webkit-transform: rotate(0deg);
}
.container.five div {
left: 0;
opacity: 0;
-webkit-transform: scale(0.9);
}
.container.five:hover div {
opacity: 1;
-webkit-transform: scale(1);
}
.container img { width: 100%; }
.container div {
box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.3);
font-weight: 300;
color: #efefef;
text-align: center;
position: absolute;
width: 100%;
height: 100%;
background: rgba(231, 76, 60, 0.7);
top: 0;
left: 100%;
transition: all 300ms ease-in-out;
background: #a90329;
background: linear-gradient(135deg, rgba(169, 3, 41, 0.8) 0%, rgba(143, 2, 34, 0.8) 44%, rgba(109, 0, 25, 0.8) 100%);
}
.container div:before {
content: "";
display: inline-block;
height: 100%;
vertical-align: middle;
margin-right: -0.25em;
}
.container div span {
display: inline-block;
vertical-align: middle;
padding: 30px;
letter-spacing: 1px;
}
.container div span h2 {
font-weight: 900;
font-size: 4em;
letter-spacing: 1px;
line-height: 0.85em;
}
@-webkit-keyframes
slideLeft { 0% {
left: 100%;
}
70% {
left: 0%;
}
85% {
left: 4%;
}
100% {
left: 0%;
}
}
@-webkit-keyframes
slideLeftOut { 0% {
left: 0%;
}
70% {
left: 100%;
}
85% {
left: 96%;
}
100% {
left: 100%;
}
}
@-webkit-keyframes
slideUp { 0% {
top: 100%;
left: 0%;
}
70% {
top: 0%;
}
85% {
top: 4%;
}
100% {
top: 0%;
left: 0%;
}
}
@-webkit-keyframes
slideUpOut { 0% {
top: 0%;
left: 0%;
}
70% {
top: 100%;
}
85% {
top: 96%;
}
100% {
top: 100%;
left: 0%;
}
}
</style>
4. A little jQuery script to enable the caption hover effects.
$('.container').hover(
function(){
$(this).children("div").removeClass('out').addClass('over');
},
function(){
$(this).children("div").removeClass('over').addClass('out');
}
);
This awesome jQuery plugin is developed by caseymorrisus. For more Advanced Usages, please check the demo page or visit the official website.











