<section>
<div class="grid">
<div class="box">
<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%">
<line class="top" x1="0" y1="0" x2="900" y2="0"/>
<line class="left" x1="0" y1="460" x2="0" y2="-920"/>
<line class="bottom" x1="300" y1="460" x2="-600" y2="460"/>
<line class="right" x1="300" y1="0" x2="300" y2="1380"/>
</svg>
<h3>1</h3>
<span>Project X</span>
<span>Web, Design, Logo</span>
</div>
<div class="box">
<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%">
<line class="top" x1="0" y1="0" x2="900" y2="0"/>
<line class="left" x1="0" y1="460" x2="0" y2="-920"/>
<line class="bottom" x1="300" y1="460" x2="-600" y2="460"/>
<line class="right" x1="300" y1="0" x2="300" y2="1380"/>
</svg>
<h3>2</h3>
<span>Project X</span>
<span>Web, Design, Logo</span>
</div>
<div class="box">
<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%">
<line class="top" x1="0" y1="0" x2="900" y2="0"/>
<line class="left" x1="0" y1="460" x2="0" y2="-920"/>
<line class="bottom" x1="300" y1="460" x2="-600" y2="460"/>
<line class="right" x1="300" y1="0" x2="300" y2="1380"/>
</svg>
<h3>3</h3>
<span>Project X</span>
<span>Web, Design, Logo</span>
</div>
</div>
</section>
<section class="effect2">
<div class="grid">
<div class="box">
<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%">
<line class="top" x1="0" y1="0" x2="900" y2="0"/>
<line class="left" x1="0" y1="460" x2="0" y2="-920"/>
<line class="bottom" x1="300" y1="460" x2="-600" y2="460"/>
<line class="right" x1="300" y1="0" x2="300" y2="1380"/>
</svg>
<h3>1</h3>
<span>Project Y</span>
<span>Design, Responsive, Text</span>
</div>
<div class="box">
<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%">
<line class="top" x1="0" y1="0" x2="900" y2="0"/>
<line class="left" x1="0" y1="460" x2="0" y2="-920"/>
<line class="bottom" x1="300" y1="460" x2="-600" y2="460"/>
<line class="right" x1="300" y1="0" x2="300" y2="1380"/>
</svg>
<h3>2</h3>
<span>Project Y</span>
<span>Design, Responsive, Text</span>
</div>
<div class="box">
<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%">
<line class="top" x1="0" y1="0" x2="900" y2="0"/>
<line class="left" x1="0" y1="460" x2="0" y2="-920"/>
<line class="bottom" x1="300" y1="460" x2="-600" y2="460"/>
<line class="right" x1="300" y1="0" x2="300" y2="1380"/>
</svg>
<h3>3</h3>
<span>Project Y</span>
<span>Design, Responsive, Text</span>
</div>
</div>
</section>
@import url(https://fonts.googleapis.com/css?family=Lato);
body {
background: #16a085;
color: #ecf0f1;
font-size: 100%;
line-height: 1.25;
font-family: "Lato", Arial, sans-serif;
}
section {
padding: 2em 2em;
text-align: center;
h2 {
font-weight: 300;
font-size: 2em;
padding: 1em 0;
}
}
.box {
width: 300px;
height: 460px;
position: relative;
background: rgba(255, 255, 255, 1);
display: inline-block;
margin: 0 10px;
cursor: pointer;
color: #16a085;
box-shadow: inset 0 0 0 3px #16a085;
-webkit-transition: background 0.4s 0.5s;
transition: background 0.4s 0.5s;
&:hover {
background: rgba(255, 255, 255, 0);
-webkit-transition-delay: 0s;
transition-delay: 0s;
}
h3 {
font-family: "Lato", sans serif;
font-size: 180px;
line-height: 370px;
margin: 0;
font-weight: 400;
width: 100%;
}
span {
display: block;
font-weight: 400;
text-transform: uppercase;
letter-spacing: 1px;
font-size: 13px;
padding: 5px;
}
h3, span {
-webkit-transition: color 0.4s 0.5s;
transition: color 0.4s 0.5s;
}
&:hover {
h3, span {
color: #fff;
-webkit-transition-delay: 0s;
transition-delay: 0s;
}
}
svg {
position: absolute;
top: 0;
left: 0;
line {
stroke-width: 3;
stroke: #ecf0f1;
fill: none;
-webkit-transition: all .8s ease-in-out;
transition: all .8s ease-in-out;
}
}
&:hover svg line {
-webkit-transition-delay: 0.1s;
transition-delay: 0.1s;
}
svg line {
&.top, &.bottom {
stroke-dasharray: 330 240;
}
&.left, &.right {
stroke-dasharray: 490 400;
}
}
&:hover svg line {
&.top {
-webkit-transform: translateX(-600px);
transform: translateX(-600px);
}
&.bottom {
-webkit-transform: translateX(600px);
transform: translateX(600px);
}
&.left {
-webkit-transform: translateY(920px);
transform: translateY(920px);
}
&.right {
-webkit-transform: translateY(-920px);
transform: translateY(-920px);
}
}
}
.effect2 .box {
background: rgba(0, 0, 0, 0);
color: #fff;
box-shadow: none;
-webkit-transition: background 0.3s;
transition: background 0.3s;
&:hover {
background: rgba(0, 0, 0, 0.4);
}
h3, span {
-webkit-transition: none;
transition: none;
}
svg line {
-webkit-transition: all .5s;
transition: all .5s;
}
&:hover svg line {
stroke-width: 10;
-webkit-transition-delay: 0s;
transition-delay: 0s;
&.top {
-webkit-transform: translateX(-300px);
transform: translateX(-300px);
}
&.bottom {
-webkit-transform: translateX(300px);
transform: translateX(300px);
}
&.left {
-webkit-transform: translateY(460px);
transform: translateY(460px);
}
&.right {
-webkit-transform: translateY(-460px);
transform: translateY(-460px);
}
}
}
View Compiled
// scroll down for second effect.
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.