<div>
<h1>Enhancing your thumb galleries using CSS3 Transitions and Transforms</h1>
<p>For the best viewing experience, open up Chrome. Firefox 10 is pretty capable but is slightly buggy with the on click examples (it does finally support 3D Transforms though!).</p>
<h2 id="gal-one">Gallery One <span>Enlarge on Hover</span></h2>
<ul class="gal-1">
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/1.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/2.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/3.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/4.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/5.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/6.jpg" alt=""></li>
</ul>
<h2 id="gal-two">Gallery Two <span>Rotate/Enlarge on Hover</span></h2>
<ul class="gal-2">
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/1.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/2.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/3.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/4.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/5.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/6.jpg" alt=""></li>
</ul>
<h2 id="gal-three">Gallery Three <span>Scattered, Enlarge on Hover</span></h2>
<ul class="gal-3">
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/1.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/2.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/3.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/4.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/5.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/6.jpg" alt=""></li>
</ul>
<h2 id="gal-four">Gallery Four <span>Enlarge to Centre on Hover</span></h2>
<ul class="gal-4">
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/1.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/2.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/3.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/4.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/5.jpg" alt=""></li>
<li><img src="https://ste.digital/demos/css3-enhanced-galleries/6.jpg" alt=""></li>
</ul>
<h2 id="gal-five">Gallery Five <span>Enlarge on Click</span></h2>
<ul class="gal-5">
<li id="one"><a class="close" href="#gal-five">Close</a><a href="#one"><img src="https://ste.digital/demos/css3-enhanced-galleries/1.jpg" alt=""></a></li>
<li id="two"><a class="close" href="#gal-five">Close</a><a href="#two"><img src="https://ste.digital/demos/css3-enhanced-galleries/2.jpg" alt=""></a></li>
<li id="three"><a class="close" href="#gal-five">Close</a><a href="#three"><img src="https://ste.digital/demos/css3-enhanced-galleries/3.jpg" alt=""></a></li>
<li id="four"><a class="close" href="#gal-five">Close</a><a href="#four"><img src="https://ste.digital/demos/css3-enhanced-galleries/4.jpg" alt=""></a></li>
<li id="five"><a class="close" href="#gal-five">Close</a><a href="#five"><img src="https://ste.digital/demos/css3-enhanced-galleries/5.jpg" alt=""></a></li>
<li id="six"><a class="close" href="#gal-five">Close</a><a href="#six"><img src="https://ste.digital/demos/css3-enhanced-galleries/6.jpg" alt=""></a></li>
</ul>
<h2 id="gal-six">Gallery Six <span>3D Flip/Enlarge on Click <strong>(Best viewed in Chrome)</strong></span></h2>
<ul class="gal-6">
<li id="onea"><a class="close" href="#gal-six">Close</a><a href="#onea"><img src="https://ste.digital/demos/css3-enhanced-galleries/1.jpg" alt=""></a></li>
<li id="twoa"><a class="close" href="#gal-six">Close</a><a href="#twoa"><img src="https://ste.digital/demos/css3-enhanced-galleries/2.jpg" alt=""></a></li>
<li id="threea"><a class="close" href="#gal-six">Close</a><a href="#threea"><img src="https://ste.digital/demos/css3-enhanced-galleries/3.jpg" alt=""></a></li>
<li id="foura"><a class="close" href="#gal-six">Close</a><a href="#foura"><img src="https://ste.digital/demos/css3-enhanced-galleries/4.jpg" alt=""></a></li>
<li id="fivea"><a class="close" href="#gal-six">Close</a><a href="#fivea"><img src="https://ste.digital/demos/css3-enhanced-galleries/5.jpg" alt=""></a></li>
<li id="sixa"><a class="close" href="#gal-six">Close</a><a href="#sixa"><img src="https://ste.digital/demos/css3-enhanced-galleries/6.jpg" alt=""></a></li>
</ul>
</div>
div {
width:30%;
min-width:300px;
margin:0 auto;
font-size:100%;
}
div:after {
content:"";
display:block;
clear:both;
height:50px;
}
h1 {
font:bold 1.2em Arial, Helvetica, sans-serif;
padding:10px;
background:#eee;
border-radius:10px;
border-radius:10px;
border-radius:10px;
border:2px dashed #ccc;
color:#333;
}
h1 a {
display:block;
font:normal 0.5em "Times New Roman", Times, serif;
text-transform:uppercase;
letter-spacing:0.2em;
text-decoration:none;
color:#666;
padding:5px 0 0;
}
h1 a:hover {
text-decoration:underline;
}
h1 + p {
font:0.8em/1.5em Arial, Helvetica, sans-serif;
}
h2 {
font:bold 1.1em Arial, Helvetica, sans-serif;
text-transform:uppercase;
margin:20px 0 0;
color:#666;
border-bottom:1px dotted #ccc;
border-top:1px dotted #ccc;
float:left;
width:100%;
padding:5px 0;
}
h2 span {
font-size:0.7em;
font-weight:normal;
text-transform:none;
}
ul {
width:100%;
background:#ccc;
list-style:none;
float:left;
padding:0 0 2.5% 0;
margin-top:5px;
}
ul li {
width:30%;
float:left;
margin:2.5% 0 0 2.5%;
position:relative;
}
ul li img {
max-width:100%;
float:left;
border:2px solid #eee;
box-sizing:border-box;
box-sizing:border-box;
box-sizing:border-box;
}
/*----------------------------------------
Gallery One
-----------------------------------------*/
.gal-1 li {
transition:all 0.6s ease;
transition:all 0.6s ease;
transition:all 0.6s ease;
transition:all 0.6s ease;
transition:all 0.6s ease;
opacity:0.5;
}
.gal-1 li:hover {
transform:scale(1.4);
transform:scale(1.4);
transform:scale(1.4);
transform:scale(1.4);
transform:scale(1.4);
z-index:2;
opacity:1;
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
}
/*----------------------------------------
Gallery Two
-----------------------------------------*/
.gal-2 li {
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
opacity:0.8;
}
.gal-2 li:hover {
transform:scale(1.4) rotate(360deg);
transform:scale(1.4) rotate(360deg);
transform:scale(1.4) rotate(360deg);
transform:scale(1.4) rotate(360deg);
transform:scale(1.4) rotate(360deg);
z-index:2;
opacity:1;
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
}
/*----------------------------------------
Gallery Three
-----------------------------------------*/
.gal-3 li {
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
transform:rotate(20deg) translate(20px, 5px);
transform:rotate(20deg) translate(20px, 5px);
transform:rotate(20deg) translate(20px, 5px);
transform:rotate(20deg) translate(20px, 5px);
transform:rotate(20deg) translate(20px, 5px);
}
.gal-3 li:nth-of-type(2) {
transform:rotate(-10deg) translate(0, 10px);
transform:rotate(-10deg) translate(0, 10px);
transform:rotate(-10deg) translate(0, 10px);
transform:rotate(-10deg) translate(0, 10px);
transform:rotate(-10deg) translate(0, 10px);
}
.gal-3 li:nth-of-type(3) {
transform:rotate(10deg) translate(0, 20px);
transform:rotate(10deg) translate(0, 20px);
transform:rotate(10deg) translate(0, 20px);
transform:rotate(10deg) translate(0, 20px);
transform:rotate(10deg) translate(0, 20px);
}
.gal-3 li:nth-of-type(4) {
transform:rotate(-30deg) translate(20px, -10px);
transform:rotate(-40deg) translate(20px, -10px);
transform:rotate(-40deg) translate(20px, -10px);
transform:rotate(-40deg) translate(20px, -10px);
transform:rotate(-40deg) translate(20px, -10px);
}
.gal-3 li:nth-of-type(5) {
transform:rotate(5deg) translate(0, -10px);
transform:rotate(5deg) translate(0, -10px);
transform:rotate(5deg) translate(0, -10px);
transform:rotate(5deg) translate(0, -10px);
transform:rotate(5deg) translate(0, -10px);
}
.gal-3 li:nth-of-type(6) {
transform:rotate(-5deg) translate(-10px, -10px);
transform:rotate(-5deg) translate(-10px, -10px);
transform:rotate(-5deg) translate(-10px, -10px);
transform:rotate(-5deg) translate(-10px, -10px);
transform:rotate(-5deg) translate(-10px, -10px);
}
.gal-3 li:hover {
transform:scale(2);
transform:scale(2);
transform:scale(2);
transform:scale(2);
transform:scale(2);
z-index:2;
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
}
/*----------------------------------------
Gallery Four
-----------------------------------------*/
.gal-4 li {
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
}
.gal-4 li:hover {
transform:scale(2.6) translate(52px, 22px);
transform:scale(2.6) translate(52px, 22px);
transform:scale(2.6) translate(52px, 22px);
transform:scale(2.6) translate(52px, 22px);
transform:scale(2.6) translate(52px, 22px);
z-index:2;
}
.gal-4 li:nth-of-type(2):hover {
transform:scale(2.6) translate(0, 22px);
transform:scale(2.6) translate(0, 22px);
transform:scale(2.6) translate(0, 22px);
transform:scale(2.6) translate(0, 22px);
transform:scale(2.6) translate(0, 22px);
}
.gal-4 li:nth-of-type(3):hover {
transform:scale(2.6) translate(-52px, 22px);
transform:scale(2.6) translate(-52px, 22px);
transform:scale(2.6) translate(-52px, 22px);
transform:scale(2.6) translate(-52px, 22px);
transform:scale(2.6) translate(-52px, 22px);
}
.gal-4 li:nth-of-type(4):hover {
transform:scale(2.6) translate(52px, -22px);
transform:scale(2.6) translate(52px, -22px);
transform:scale(2.6) translate(52px, -22px);
transform:scale(2.6) translate(52px, -22px);
transform:scale(2.6) translate(52px, -22px);
}
.gal-4 li:nth-of-type(5):hover {
transform:scale(2.6) translate(0, -22px);
transform:scale(2.6) translate(0, -22px);
transform:scale(2.6) translate(0, -22px);
transform:scale(2.6) translate(0, -22px);
transform:scale(2.6) translate(0, -22px);
}
.gal-4 li:nth-of-type(6):hover {
transform:scale(2.6) translate(-52px, -22px);
transform:scale(2.6) translate(-52px, -22px);
transform:scale(2.6) translate(-52px, -22px);
transform:scale(2.6) translate(-52px, -22px);
transform:scale(2.6) translate(-52px, -22px);
}
/*----------------------------------------
Gallery Five
-----------------------------------------*/
.gal-5 li {
transition:all 0.6s ease;
transition:all 0.6s ease;
transition:all 0.6s ease;
transition:all 0.6s ease;
transition:all 0.6s ease;
opacity:0.6;
position:relative;
}
.gal-5 li:hover {
opacity:1;
}
.gal-5 li:target {
transform:scale(2.2);
transform:scale(2.2);
transform:scale(2.2);
transform:scale(2.2);
transform:scale(2.2);
z-index:2;
opacity:1;
}
.gal-5 li:target img {
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
}
.close {
display:none;
font:0.3em/1em Arial, Helvetica, sans-serif;
text-transform:uppercase;
letter-spacing:0.3em;
text-decoration:none;
background:#c15252;
padding:2px 2px;
border-radius:2px;
border-radius:2px;
border-radius:2px;
color:#fff;
position:absolute;
top:-3px;
right:0;
ox-shadow:2px 2px 3px rgba(0, 0, 0, 0.2);
box-shadow:2px 2px 3px rgba(0, 0, 0, 0.2);
box-shadow:2px 2px 3px rgba(0, 0, 0, 0.2);
}
.close:hover {
background:#d06464;
}
.gal-5 li:target .close {
display:inline;
}
/*----------------------------------------
Gallery Six
-----------------------------------------*/
.gal-6 li {
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
transition:all 1s ease;
opacity:0.6;
position:relative;
}
.gal-6 li:hover {
opacity:1;
}
.gal-6 li:target {
transform:scale(2.2) rotateY(360deg);
transform:scale(2.2) rotateY(360deg);
transform:scale(2.2) rotateY(360deg);
transform:scale(2.2) rotateY(360deg);
transform:scale(2.2) rotateY(360deg);
z-index:2;
opacity:1;
}
.gal-6 li:nth-of-type(even):target {
transform:scale(2.2) rotateX(360deg);
transform:scale(2.2) rotateX(360deg);
transform:scale(2.2) rotateX(360deg);
transform:scale(2.2) rotateX(360deg);
transform:scale(2.2) rotateX(360deg);
}
.gal-6 li:target img {
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow:5px 3px 5px rgba(0, 0, 0, 0.3);
}
.close {
display:none;
font:0.3em/1em Arial, Helvetica, sans-serif;
text-transform:uppercase;
letter-spacing:0.3em;
text-decoration:none;
background:#c15252;
padding:2px 2px;
border-radius:2px;
border-radius:2px;
border-radius:2px;
color:#fff;
position:absolute;
top:-3px;
right:0;
box-shadow:2px 2px 3px rgba(0, 0, 0, 0.2);
box-shadow:2px 2px 3px rgba(0, 0, 0, 0.2);
box-shadow:2px 2px 3px rgba(0, 0, 0, 0.2);
}
.close:hover {
background:#d06464;
}
.gal-6 li:target .close {
display:inline;
}
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.