UNPKG

hovertile

Version:

A port of Mary Lou's hover tiles to React

98 lines (83 loc) 2.39 kB
figure.hera { background: #303fa9; } figure.hera .content { font-size: 158.75%; } figure.hera .content, figure.hera p { position: absolute; top: 50%; left: 50%; -webkit-transition: opacity 0.35s, -webkit-transform 0.35s; transition: opacity 0.35s, transform 0.35s; -webkit-transform: translate3d(-50%,-50%,0); transform: translate3d(-50%,-50%,0); -webkit-transform-origin: 50%; transform-origin: 50%; } figure.hera figcaption::before { position: absolute; top: 50%; left: 50%; width: 200px; height: 200px; border: 2px solid #fff; content: ''; opacity: 0; -webkit-transition: opacity 0.35s, -webkit-transform 0.35s; transition: opacity 0.35s, transform 0.35s; -webkit-transform: translate3d(-50%,-50%,0) rotate3d(0,0,1,-45deg) scale3d(0,0,1); transform: translate3d(-50%,-50%,0) rotate3d(0,0,1,-45deg) scale3d(0,0,1); -webkit-transform-origin: 50%; transform-origin: 50%; } figure.hera .hoverContent { width: 100px; text-transform: none; font-size: 121%; line-height: 2; } figure.hera .hoverContent a { color: #fff; } figure.hera .hoverContent a:hover, figure.hera .hoverContent a:focus { opacity: 0.6; } figure.hera .hoverContent a i { opacity: 0; -webkit-transition: opacity 0.35s, -webkit-transform 0.35s; transition: opacity 0.35s, transform 0.35s; } figure.hera .hoverContent a:first-child i { -webkit-transform: translate3d(-60px,-60px,0); transform: translate3d(-60px,-60px,0); } figure.hera .hoverContent a:nth-child(2) i { -webkit-transform: translate3d(60px,-60px,0); transform: translate3d(60px,-60px,0); } figure.hera .hoverContent a:nth-child(3) i { -webkit-transform: translate3d(-60px,60px,0); transform: translate3d(-60px,60px,0); } figure.hera .hoverContent a:nth-child(4) i { -webkit-transform: translate3d(60px,60px,0); transform: translate3d(60px,60px,0); } figure.hera:hover figcaption::before { opacity: 1; -webkit-transform: translate3d(-50%,-50%,0) rotate3d(0,0,1,-45deg) scale3d(1,1,1); transform: translate3d(-50%,-50%,0) rotate3d(0,0,1,-45deg) scale3d(1,1,1); } figure.hera:hover .content { opacity: 0; -webkit-transform: translate3d(-50%,-50%,0) scale3d(0.8,0.8,1); transform: translate3d(-50%,-50%,0) scale3d(0.8,0.8,1); } figure.hera:hover .hoverContent i:empty { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); /* just because it's stronger than nth-child */ opacity: 1; }