Footer Contact Reveal
A footer contact link coordinates an arrow reveal with an animated underline.
A footer contact link coordinates an arrow reveal with an animated underline.
Live Demo
Hover over the element or use Tab to focus.
Source Code
Copy the HTML, CSS or JavaScript you need for your project.
<a class="tbx-1084" href="mailto:hello@example.com"><span class="tbx-1084__top"><small>START A CONVERSATION</small><span aria-hidden="true">↗</span></span><strong>hello@example.com</strong><span class="tbx-1084__line" aria-hidden="true"></span></a>
.tbx-1084{display:grid;gap:15px;width:min(300px,100%);padding:21px 19px 20px;border-radius:8px;background:#132d3d;color:white;text-decoration:none;font:12px/1.2 system-ui,sans-serif;overflow:hidden}
.tbx-1084__top{display:flex;align-items:center;justify-content:space-between;gap:10px}.tbx-1084__top small{font-size:9px;font-weight:700;letter-spacing:.1em;color:#a7c5d0;transition:color .28s}
.tbx-1084__top span{font-size:24px;display:inline-block;transition:transform .38s,color .38s}
.tbx-1084 strong{font-size:20px;letter-spacing:-.04em;white-space:nowrap;max-width:100%;font-weight:650}
.tbx-1084__line{height:2px;width:100%;background:#678996;position:relative;overflow:hidden}.tbx-1084__line:before{content:"";position:absolute;inset:0;background:#8dd5bc;transform:translateX(-100%);transition:transform .45s ease}
.tbx-1084:is(:hover,:focus-visible) .tbx-1084__top span{transform:translate(4px,-4px);color:#8dd5bc}.tbx-1084:is(:hover,:focus-visible) .tbx-1084__top small{color:#8dd5bc}.tbx-1084:is(:hover,:focus-visible) .tbx-1084__line:before{transform:translateX(0)}
.tbx-1084:focus-visible{outline:3px solid #e0b36f;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.tbx-1084 *, .tbx-1084__line:before{transition:none!important}}
How to Use
Insert the HTML and add the CSS to your stylesheet. Adjust colors and sizes and avoid class conflicts.
Use Case
Useful for contact sections and footer sections.
Technical Notes
Keep controls usable on touch devices. Test keyboard focus and reduced-motion preferences.
Mobile: Ensure the interactive content remains accessible without hover on touch devices.
Browser: Uses modern CSS. Check behavior in the browsers you support.
Reduced Motion: Check that prefers-reduced-motion is respected.