<!DOCTYPE html><!-- [et_pb_line_break_holder] --><html lang="en" class="no-js"><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><head><!-- [et_pb_line_break_holder] --> <meta charset="UTF-8" /><!-- [et_pb_line_break_holder] --> <meta http-equiv="X-UA-Compatible" content="IE=edge"><!-- [et_pb_line_break_holder] --> <meta name="viewport" content="width=device-width, initial-scale=1"><!-- [et_pb_line_break_holder] --> <title>Inspiration for Text Styles and Hover Effects</title><!-- [et_pb_line_break_holder] --> <meta name="description" content="A set of modern text styles and hover effects for your inspiration" /><!-- [et_pb_line_break_holder] --> <meta name="keywords" content="text style, link style, link hover, effect, animation, inspiration, web design" /><!-- [et_pb_line_break_holder] --> <meta name="author" content="Codrops" /><!-- [et_pb_line_break_holder] --> <link rel="shortcut icon" href="favicon.ico"><!-- [et_pb_line_break_holder] --> <!-- [et_pb_line_break_holder] --> <link rel="stylesheet" type="text/css" href="css/demo.css" /><!-- [et_pb_line_break_holder] --> <link rel="stylesheet" type="text/css" href="css/linkstyles.css" /><!-- [et_pb_line_break_holder] --> <!--[if IE]><!-- [et_pb_line_break_holder] --> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><!-- [et_pb_line_break_holder] --> <![endif]--><!-- [et_pb_line_break_holder] --> <style> /* Firefox seems to have issues loading the clip path from inside the CSS */<!-- [et_pb_line_break_holder] --> .link--urpi::before {<!-- [et_pb_line_break_holder] --> -webkit-clip-path: url(#cp_up); <!-- [et_pb_line_break_holder] --> clip-path: url(#cp_up);<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> .link--urpi::after {<!-- [et_pb_line_break_holder] --> -webkit-clip-path: url(#cp_down); <!-- [et_pb_line_break_holder] --> clip-path: url(#cp_down);<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> </style><!-- [et_pb_line_break_holder] --></head><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><body><!-- [et_pb_line_break_holder] --> <!-- clipping mask for style "Urpi" --><!-- [et_pb_line_break_holder] --> <svg class="hidden" viewBox="0 0 310 160"><!-- [et_pb_line_break_holder] --> <defs><!-- [et_pb_line_break_holder] --> <clippath id="cp_up"><!-- [et_pb_line_break_holder] --> <polygon id="cp_poly_up" points="0,0 310,0 310,160" /><!-- [et_pb_line_break_holder] --> </clippath><!-- [et_pb_line_break_holder] --> <clippath id="cp_down"><!-- [et_pb_line_break_holder] --> <polygon id="cp_poly_down" points="0,0 0,160 310,160" /><!-- [et_pb_line_break_holder] --> </clippath><!-- [et_pb_line_break_holder] --> </defs><!-- [et_pb_line_break_holder] --> </svg><!-- [et_pb_line_break_holder] --> <!-- SVG for effect "Asiri" --><!-- [et_pb_line_break_holder] --> <!-- Inverted masking technique by Yoksel http://tympanus.net/codrops/2015/02/16/create-animated-text-fills/ --><!-- [et_pb_line_break_holder] --> <svg class="hidden svg--asiri" viewBox="0 0 400 200"><!-- [et_pb_line_break_holder] --> <!-- Symbol with text --><!-- [et_pb_line_break_holder] --> <symbol id="s-text"><!-- [et_pb_line_break_holder] --> <text text-anchor="middle" x="50%" y="50%" dy="0.35em" textLength="280" class="text--asiri">Asiri</text><!-- [et_pb_line_break_holder] --> </symbol><!-- [et_pb_line_break_holder] --> <!-- Mask with text --><!-- [et_pb_line_break_holder] --> <mask id="m-text" maskunits="userSpaceOnUse" maskcontentunits="userSpaceOnUse"><!-- [et_pb_line_break_holder] --> <rect width="100%" height="100%" class="mask__shape"><!-- [et_pb_line_break_holder] --> </rect><!-- [et_pb_line_break_holder] --> <use xlink:href="#s-text" class="mask__text"></use><!-- [et_pb_line_break_holder] --> </mask><!-- [et_pb_line_break_holder] --> </svg><!-- [et_pb_line_break_holder] --> <div class="container"><!-- [et_pb_line_break_holder] --> <header class="codrops-header"><!-- [et_pb_line_break_holder] --> <div class="codrops-links"><!-- [et_pb_line_break_holder] --> <a class="codrops-icon codrops-icon--prev" href="http://tympanus.net/Development/PhotographyWebsiteConcept/" title="Previous Demo"><span>Previous Demo</span></a><!-- [et_pb_line_break_holder] --> <a class="codrops-icon codrops-icon--drop" href="http://tympanus.net/codrops/?p=24024" title="Back to the article"><span>Back to the Codrops article</span></a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <h1><span class="sub">Inspiration for</span> Text Styles <span class="amp">&</span> Hover Effects</h1><!-- [et_pb_line_break_holder] --> </header><!-- [et_pb_line_break_holder] --> <div class="grid"><!-- [et_pb_line_break_holder] --> <div class="grid__item color-1"><!-- [et_pb_line_break_holder] --> <a class="link link--kukuri" href="#" data-letters="Kukuri">Kukuri</a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="grid__item"><!-- [et_pb_line_break_holder] --> <a class="link link--takiri" href="#">Takiri <span>Where do you want to be?</span></a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="grid__item color-2"><!-- [et_pb_line_break_holder] --> <a class="link link--surinami" href="#"><span data-letters-l="Suri" data-letters-r="nami">Surinami</span></a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="grid__item color-3"><!-- [et_pb_line_break_holder] --> <a class="link link--nukun" href="#">Nu<span>k</span>un</a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="grid__item color-4"><!-- [et_pb_line_break_holder] --> <a class="link link--kumya" href="#"><span data-letters="Kumya">Kumya</span></a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="grid__item color-8"><!-- [et_pb_line_break_holder] --> <a class="link link--manko" href="#">Manko <span>one step</span> <span>at a time</span></a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="grid__item color-11"><!-- [et_pb_line_break_holder] --> <a class="link link--yaku" href="#"><!-- [et_pb_line_break_holder] --> <span>Y</span><span>a</span><span>k</span><span>u</span> <!-- [et_pb_line_break_holder] --> </a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="grid__item color-7"><!-- [et_pb_line_break_holder] --> <a class="link link--mallki" href="#">Mallki<span data-letters="Mallki"></span><span data-letters="Mallki"></span></a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="grid__item color-9"><!-- [et_pb_line_break_holder] --> <a class="link link--ilin" href="#"><span>Il</span><span>in</span></a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="grid__item"><!-- [et_pb_line_break_holder] --> <p>The next effects only work in Firefox and Chrome.</p><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="grid__item color-5"><!-- [et_pb_line_break_holder] --> <a class="link link--urpi" href="#" data-letters="Urpi">Urpi</a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="grid__item color-10"><!-- [et_pb_line_break_holder] --> <a class="link link--asiri" href="#"><!-- [et_pb_line_break_holder] --> <!-- Content for text --><!-- [et_pb_line_break_holder] --> <div class="text-fill"><!-- [et_pb_line_break_holder] --> <canvas id="canv"></canvas><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <!-- SVG to cover text fill --><!-- [et_pb_line_break_holder] --> <svg viewBox="0 0 400 200" class="svg-inverted-mask"><!-- [et_pb_line_break_holder] --> <!-- Big shape with hole in form of text --><!-- [et_pb_line_break_holder] --> <rect width="100%" height="100%" mask="url(#m-text)" class="shape--fill" /><!-- [et_pb_line_break_holder] --> <!-- Transparent copy of text to keep<!-- [et_pb_line_break_holder] --> patterned text selectable --><!-- [et_pb_line_break_holder] --> <use xlink:href="#s-text" class="text--transparent"></use><!-- [et_pb_line_break_holder] --> </svg><!-- [et_pb_line_break_holder] --> </a><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <!-- Related demos --><!-- [et_pb_line_break_holder] --> <section class="content content--related"><!-- [et_pb_line_break_holder] --> <p>If you enjoyed this demo you might also like:</p><!-- [et_pb_line_break_holder] --> <a class="media-item" href="http://tympanus.net/Development/CreativeLinkEffects/"><!-- [et_pb_line_break_holder] --> <img class="media-item__img" src="img/related/CreativeLinkEffects.png"><!-- [et_pb_line_break_holder] --> <h3 class="media-item__title">Creative Link Effects</h3><!-- [et_pb_line_break_holder] --> </a><!-- [et_pb_line_break_holder] --> <a class="media-item" href="http://tympanus.net/Tutorials/CaptionHoverEffects/"><!-- [et_pb_line_break_holder] --> <img class="media-item__img" src="img/related/CaptionHoverEffect.png"><!-- [et_pb_line_break_holder] --> <h3 class="media-item__title">Caption Hover Effects</h3><!-- [et_pb_line_break_holder] --> </a><!-- [et_pb_line_break_holder] --> </section><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <!-- /container --><!-- [et_pb_line_break_holder] --> <!-- Jolt by Tiffany Rayside: http://codepen.io/tmrDevelops/pen/dPjYYP/ --><!-- [et_pb_line_break_holder] --> <script><!-- [et_pb_line_break_holder] --> window.requestAnimFrame = (function(callback) {<!-- [et_pb_line_break_holder] --> return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame ||<!-- [et_pb_line_break_holder] --> function(callback) {<!-- [et_pb_line_break_holder] --> window.setTimeout(callback, 1000 / 60);<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> })();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> var requestId, jolttime;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> var c = document.getElementById('canv');<!-- [et_pb_line_break_holder] --> var $ = c.getContext('2d');<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> var s = 18; //grid square size<!-- [et_pb_line_break_holder] --> var mv = 10; //moving areas<!-- [et_pb_line_break_holder] --> var sp = 1; //move speed<!-- [et_pb_line_break_holder] --> var clm = 23; //columns<!-- [et_pb_line_break_holder] --> var rw = 10; //rows<!-- [et_pb_line_break_holder] --> var x = []; //x array<!-- [et_pb_line_break_holder] --> var y = []; //y array<!-- [et_pb_line_break_holder] --> var X = []; //starting X array<!-- [et_pb_line_break_holder] --> var Y = []; //starting Y array<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> c.width = c.offsetWidth;<!-- [et_pb_line_break_holder] --> c.height = c.offsetHeight;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> for (var i = 0; i < clm * rw; i++) {<!-- [et_pb_line_break_holder] --> x[i] = ((i % clm) - 0.5) * s;<!-- [et_pb_line_break_holder] --> y[i] = (Math.floor(i / clm) - 0.5) * s;<!-- [et_pb_line_break_holder] --> X[i] = x[i];<!-- [et_pb_line_break_holder] --> Y[i] = y[i];<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> var t = 0;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> function jolt() {<!-- [et_pb_line_break_holder] --> $.fillRect(0, 0, c.width, c.height);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> for (var i = 0; i < clm * rw; i++) {<!-- [et_pb_line_break_holder] --> if (i % clm != clm - 1 && i < clm * (rw - 1) - 1) {<!-- [et_pb_line_break_holder] --> $.fillStyle = "hsla(0,0,0,1)";<!-- [et_pb_line_break_holder] --> $.strokeStyle = "#95D384";<!-- [et_pb_line_break_holder] --> $.lineWidth = 1;<!-- [et_pb_line_break_holder] --> $.beginPath();<!-- [et_pb_line_break_holder] --> $.moveTo(x[i], y[i]);<!-- [et_pb_line_break_holder] --> $.lineTo(x[i + 1], y[i + 1]);<!-- [et_pb_line_break_holder] --> $.lineTo(x[i + clm + 1], y[i + clm + 1]);<!-- [et_pb_line_break_holder] --> $.lineTo(x[i + clm], y[i + clm]);<!-- [et_pb_line_break_holder] --> $.closePath();<!-- [et_pb_line_break_holder] --> $.stroke();<!-- [et_pb_line_break_holder] --> $.fill();<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> for (var i = 0; i < rw * clm; i++) {<!-- [et_pb_line_break_holder] --> if ((x[i] < X[i] + mv) && (x[i] > X[i] - mv) && (y[i] < Y[i] + mv) && (y[i] > Y[i] - mv)) {<!-- [et_pb_line_break_holder] --> x[i] = x[i] + Math.floor(Math.random() * (sp * 2 + 1)) - sp;<!-- [et_pb_line_break_holder] --> y[i] = y[i] + Math.floor(Math.random() * (sp * 2 + 1)) - sp;<!-- [et_pb_line_break_holder] --> } else if (x[i] >= X[i] + mv) {<!-- [et_pb_line_break_holder] --> x[i] = x[i] - sp;<!-- [et_pb_line_break_holder] --> } else if (x[i] <= X[i] - mv) {<!-- [et_pb_line_break_holder] --> x[i] = x[i] + sp;<!-- [et_pb_line_break_holder] --> } else if (y[i] >= Y[i] + mv) {<!-- [et_pb_line_break_holder] --> y[i] = y[i] - sp;<!-- [et_pb_line_break_holder] --> } else if (y[i] <= Y[i] + mv) {<!-- [et_pb_line_break_holder] --> y[i] = y[i] + sp;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> //controls time of electric shake> when counter equals 0, it will reset for 5s then start again.<!-- [et_pb_line_break_holder] --> if (t % c.width == 0) {<!-- [et_pb_line_break_holder] --> jolttime = setTimeout('jolt()', 5);<!-- [et_pb_line_break_holder] --> t++;<!-- [et_pb_line_break_holder] --> } else {<!-- [et_pb_line_break_holder] --> jolttime = setTimeout('jolt()', 5);<!-- [et_pb_line_break_holder] --> t++;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> function start() {<!-- [et_pb_line_break_holder] --> if (!requestId) {<!-- [et_pb_line_break_holder] --> requestId = window.requestAnimFrame(jolt);<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> function stop() {<!-- [et_pb_line_break_holder] --> if (requestId) {<!-- [et_pb_line_break_holder] --> clearTimeout(jolttime);<!-- [et_pb_line_break_holder] --> window.cancelAnimationFrame(requestId);<!-- [et_pb_line_break_holder] --> requestId = undefined;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> document.querySelector('a.link--asiri').addEventListener('mouseenter', start);<!-- [et_pb_line_break_holder] --> document.querySelector('a.link--asiri').addEventListener('mouseleave', stop);<!-- [et_pb_line_break_holder] --> </script><!-- [et_pb_line_break_holder] --> <script><!-- [et_pb_line_break_holder] --> // For Demo purposes only (show hover effect on mobile devices)<!-- [et_pb_line_break_holder] --> [].slice.call( document.querySelectorAll('.grid a') ).forEach( function(el) {<!-- [et_pb_line_break_holder] --> el.onclick = function() { return false; }<!-- [et_pb_line_break_holder] --> } );<!-- [et_pb_line_break_holder] --> </script><!-- [et_pb_line_break_holder] --></body><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --></html><!-- [et_pb_line_break_holder] -->