Hexagon shape with triangles
The traingles have a hover event to change color an move. Triangles togother form an hexagon.
by Jithin Raj P R
HTML
<div class="t">
<div><div class="triangle"></div></div>
<div><div class="triangle"></div></div>
<div><div class="triangle"></div></div>
<div><div class="triangle"></div></div>
<div><div class="triangle"></div></div>
<div><div class="triangle"></div></div>
</div>
CSS
.t > div {
position:absolute;
top:50%;
left:50%;
width: 222px;
height: 192px;
overflow:hidden;
transform-origin:0 0;
-ms-transform-origin:0 0;
-webkit-transform-origin:0 0;
-ms-transform: skewX(30deg);
-webkit-transform: skewX(30deg);
transform: skewX(30deg);
}
.t div .triangle {
position:absolute;
top:86px;
left:-101px;
width: 0px;
height: 0px;
border-style: solid;
border-width: 0 100px 173.2px 100px;
border-color: transparent transparent #0079c5 transparent;
-webkit-backface-visibility: hidden;
transition:all 1s;
-webkit-transition:all 1s;
-moz-transition:all 1s;
cursor:pointer;
transform-origin:0 0;
-ms-transform-origin:0 0;
-webkit-transform-origin:0 0;
-ms-transform: skewX(-30deg) rotate(-60deg);
-webkit-transform: skewX(-30deg) rotate(-60deg);
transform: skewX(-30deg) rotate(-60deg);
}
.t div .triangle:hover {
border-color: transparent transparent #009cff transparent;
transform: skewX(-30deg) rotate(-60deg) translate(0, 20%);
-webkit-transform: skewX(-30deg) rotate(-60deg) translate(0, 20%);
-moz-transform: skewX(-30deg) rotate(-60deg) translate(0, 20%);
}
.t > div:nth-child(1){
-ms-transform: skewX(30deg);
-webkit-transform: skewX(30deg);
transform: skewX(30deg);
}
.t > div:nth-child(2){
-ms-transform: rotate(60deg) skewX(30deg);
-webkit-transform: rotate(60deg) skewX(30deg);
transform: rotate(60deg) skewX(30deg);
}
.t > div:nth-child(3){
-ms-transform: rotate(120deg) skewX(30deg);
-webkit-transform: rotate(120deg) skewX(30deg);
transform: rotate(120deg) skewX(30deg);
}
.t > div:nth-child(4){
-ms-transform: rotate(-60deg) skewX(30deg);
-webkit-transform: rotate(-60deg) skewX(30deg);
transform: rotate(-60deg) skewX(30deg);
}
.t > div:nth-child(5){
-ms-transform: rotate(-120deg) skewX(30deg);
-webkit-transform: rotate(-120deg)...