Cool link effects made with SASS.
A Pen by Riccardo Zanutta on CodePen.
Cool link effects made with SASS.
A Pen by Riccardo Zanutta on CodePen.
| <h1>Webdesigner Depot Rollover link effect</h1> | |
| <a href="#" class="link1"><span data-title="Text Link">Text Link</span></a> | |
| <h2>Cool Underline</h2> | |
| <a href="#" class="link2">Text Link</a> | |
| <h2>Show That Link</h2> | |
| <a href="https://twitter.com/RiccardoZanutta" class="link3" target="_blank">Text Link</a> | |
| <h2>Up</h2> | |
| <a href="#" class="link4">Text Link</a> | |
| <h2>Slide in</h2> | |
| <div class="link5"> | |
| <a href="" class="link5"><span data-hover="Text Link">Text Link</span></a> | |
| </div> |
| <script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> |
| @import "bourbon"; | |
| // Demo styles | |
| body { | |
| font-family: "Lato", sans-serif; | |
| background: #92c7d6; | |
| margin: 0; | |
| color: #334; | |
| -webkit-font-smoothing: antialiased; | |
| text-align: center; | |
| padding: 40px 20px; | |
| line-height: 1.2em; | |
| } | |
| h1, h2 { | |
| font-size: 2em; | |
| margin: 40px 0; | |
| } | |
| @media only screen and(max-width: 680px) { | |
| h1, h2 { | |
| font-size: 1.3em; | |
| } | |
| } | |
| a, a:link, a:visited { | |
| text-decoration: none; | |
| color: #03c; | |
| } | |
| /* Link 1 */ | |
| .link1 { | |
| display: inline-block; | |
| overflow: hidden; | |
| vertical-align: top; | |
| perspective: 600px; | |
| perspective-origin: 50% 50%; | |
| &:hover span { | |
| background: #03c; | |
| transform: translate3d( 0px, 0px, -30px ) rotateX( 90deg ); | |
| } | |
| span { | |
| display: block; | |
| position: relative; | |
| padding: 4px; | |
| transition: all 400ms ease; | |
| transform-origin: 50% 0%; | |
| transform-style: preserve-3d; | |
| &:after { | |
| content: attr(data-title); | |
| display: block; | |
| position: absolute; | |
| left: 0; | |
| top: 0; | |
| padding: 4px; | |
| color: #fff; | |
| background: #03c; | |
| transform-origin: 50% 0%; | |
| transform: translate3d( 0px, 105%, 0px ) rotateX( -90deg ); | |
| } | |
| } | |
| } | |
| /* Link2 */ | |
| .link2 { | |
| position: relative; | |
| &:after { | |
| content: ''; | |
| position: absolute; | |
| bottom: -.4em; | |
| left: 50%; | |
| right: 50%; | |
| height: 1px; | |
| background: currentColor; // system color | |
| transition: all ease .2s; | |
| } | |
| &:hover:after { | |
| left: 0; | |
| right: 0; | |
| height: 2px; | |
| } | |
| &:before { | |
| position: absolute; | |
| transform: translateX(-100%); | |
| left: -10px; | |
| color: #eee; | |
| opacity: .3; | |
| font-weight: 100; | |
| font-size: .8em; | |
| } | |
| } | |
| /* Link 3 */ | |
| a[href*="http"], a[href*="."], .link3 { | |
| position: relative; | |
| &:hover { | |
| text-decoration: underline; | |
| } | |
| &:active { | |
| background: inherit; | |
| color: inherit; | |
| } | |
| &:hover:before { | |
| content: attr(href); | |
| display: block; | |
| border-color: #2678c6; | |
| position: absolute; | |
| top: -2.5em; | |
| left: -3em; | |
| padding: 0.35em; | |
| background: #03c; | |
| color: #f7f7f7; | |
| font-size: .9em; | |
| white-space: nowrap; | |
| } | |
| } | |
| /* Link 4 */ | |
| .link4 { | |
| display: inline-block; | |
| transition-duration: 0.3s; | |
| transition-property: transform; | |
| transform: translateZ(0); | |
| box-shadow: 0 0 1px rgba(0, 0, 0, 0); | |
| &:hover { | |
| transform: translateY(-3px); | |
| color: lighten(#03c, 15%); | |
| } | |
| } | |
| /* Link 5 */ | |
| .link5 { | |
| overflow: hidden; | |
| padding: 0 4px; | |
| height: 1em; | |
| a { | |
| span { | |
| &:before { | |
| position: absolute; | |
| top: 100%; | |
| content: attr(data-hover); | |
| font-weight: 700; | |
| transform: translate3d(0,0,0); | |
| } | |
| } | |
| } | |
| span { | |
| position: relative; | |
| display: inline-block; | |
| transition: transform 0.3s; | |
| } | |
| &:hover span, | |
| &:focus span { | |
| transform: translateY(-100%); | |
| } | |
| } |