CSS efekt hover: dymek (Hint)

Założenie jest bardzo proste. Najeżdżamy myszką na jakiś tekst, co skutkuje pojawieniem się dymka z opisem. "Hint" wyświetla się nie od razu, lecz wyłania się z półprzezroczystości, jednocześnie wysuwając obok tekstu. Są 4 kierunki animacji - wyjechanie pionowo/poziomo/w prawo/w lewo. Animacja jest szybka, jednak zauważalna. Miły dla oka efekt :)


Źródło: http://cssdeck.com/labs/hint-css-tooltip

HTML


<h1> HINT</h1> <h3> A CSS tooltip library [WIP]</h3> <em>( Hint.css <a href="http://kushagragour.in/lab/hint/" target="_blank">has been released</a>.)</em> <a class="hint hint--top" data-hint="Yeah, I am &gt;:D" href="https://www.blogger.com/blogger.g?blogID=4817203568281494964#">Look, there is something over me.</a> <br /> <a class="hint hint--right" data-hint="Are you sure you are?" href="https://www.blogger.com/blogger.g?blogID=4817203568281494964#">I am always right!</a> <br /> <a class="hint hint--bottom" data-hint="Sure. Cheers!" href="https://www.blogger.com/blogger.g?blogID=4817203568281494964#">How about a bottoms up?</a> <br /> <a class="hint hint--left" data-hint="LEFT-over Sir..." href="https://www.blogger.com/blogger.g?blogID=4817203568281494964#">What do we get now?</a><br /> <a class="hint hint--right" data-hint="Made by Kushagra Gour" href="https://twitter.com/chinchang457" target="_blank"><img src="https://lh3.googleusercontent.com/blogger_img_proxy/AEn0k_v07a8VdihXrkfmANfLbaNQvu57c5W7qb0r1jtkNi6en3mTQg1YIPs6ScTyl4u7Vzn8tXGpHuSRSToXgDvSFWlwxNE6CRKSjHSnRboWRvMXcA-zwxQnGwZFuhw1HBoHBxUPMR-sCVJVUePZApIV=s0-d"></a> <br />

CSS


/** * HINT- A CSS tooltip library */ .hint { position: relative; display: inline-block; } .hint:before, .hint:after { position: absolute; opacity: 0; z-index: 1000000; -webkit-transition: 0.3s ease; -moz-transition: 0.3s ease; pointer-events: none; } .hint:hover:before, .hint:hover:after { opacity: 1; } .hint:before { content: ''; position: absolute; background: transparent; border: 6px solid transparent; position: absolute; } .hint:after { content: attr(data-hint); background: rgba(0, 0, 0, 0.8); color: white; padding: 8px 10px; font-size: 12px; white-space: nowrap; box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.3); } /* top */ .hint--top:before { bottom: 100%; left: 50%; margin: 0 0 -18px 0; border-top-color: rgba(0, 0, 0, 0.8); } .hint--top:after { bottom: 100%; left: 50%; margin: 0 0 -6px -10px; } .hint--top:hover:before { margin-bottom: -10px; } .hint--top:hover:after { margin-bottom: 2px; } /* default: bottom */ .hint--bottom:before { top: 100%; left: 50%; margin: -14px 0 0 0; border-bottom-color: rgba(0, 0, 0, 0.8); } .hint--bottom:after { top: 100%; left: 50%; margin: -2px 0 0 -10px; } .hint--bottom:hover:before { margin-top: -6px; } .hint--bottom:hover:after { margin-top: 6px; } /* right */ .hint--right:before { left: 100%; bottom: 50%; margin: 0 0 -4px -8px; border-right-color: rgba(0,0,0,0.8); } .hint--right:after { left: 100%; bottom: 50%; margin: 0 0 -13px 4px; } .hint--right:hover:before { margin: 0 0 -4px -0; } .hint--right:hover:after { margin: 0 0 -13px 12px; } /* left */ .hint--left:before { right: 100%; bottom: 50%; margin: 0 -8px -4px 0; border-left-color: rgba(0,0,0,0.8); } .hint--left:after { right: 100%; bottom: 50%; margin: 0 4px -13px 0; } .hint--left:hover:before { margin: 0 0 -4px 0; } .hint--left:hover:after { margin: 0 12px -13px 0; }

0 komentarze:

Prześlij komentarz