Signal Bars Response
Four signal bars rise in sequence to suggest connection strength in a dashboard icon.
Four signal bars rise in sequence to suggest connection strength in a dashboard icon.
Live Demo
Hover over the element or use Tab to focus.
Source Code
Copy the HTML, CSS or JavaScript you need for your project.
<button class="tbx-1167" type="button" aria-label="Check connection status"><span class="tbx-1167__signal" aria-hidden="true"><i></i><i></i><i></i><i></i></span><span><strong>CONNECTED</strong><small>Network status ↗</small></span></button>
.tbx-1167{box-sizing:border-box;display:flex;align-items:center;gap:14px;padding:13px 16px;background:#f1f8f7;border:1px solid #bcd9d5;border-radius:12px;cursor:pointer;color:#1b4c54;font-family:system-ui,sans-serif;text-align:left;min-width:238px;max-width:100%;transition:background .3s,box-shadow .3s}.tbx-1167__signal{display:flex;align-items:end;gap:4px;height:45px;padding:8px 6px 6px;background:#d7ede8;border-radius:7px}.tbx-1167__signal i{width:7px;height:8px;border-radius:3px 3px 1px 1px;background:#79a7a0;transform-origin:bottom;transition:height .32s cubic-bezier(.3,.85,.25,1),background .32s}.tbx-1167__signal i:nth-child(2){height:13px;transition-delay:.04s}.tbx-1167__signal i:nth-child(3){height:18px;transition-delay:.08s}.tbx-1167__signal i:nth-child(4){height:24px;transition-delay:.12s}.tbx-1167>span:last-child{display:flex;flex-direction:column;gap:5px}.tbx-1167 strong{font-size:12px;letter-spacing:.08em}.tbx-1167 small{font-size:10px;color:#577c78}.tbx-1167:is(:hover,:focus-visible){background:#e4f5ed;box-shadow:0 7px 16px #34706129}.tbx-1167:is(:hover,:focus-visible) .tbx-1167__signal i:first-child{height:20px;background:#248767}.tbx-1167:is(:hover,:focus-visible) .tbx-1167__signal i:nth-child(2){height:25px;background:#248767}.tbx-1167:is(:hover,:focus-visible) .tbx-1167__signal i:nth-child(3){height:31px;background:#248767}.tbx-1167:is(:hover,:focus-visible) .tbx-1167__signal i:nth-child(4){height:31px;background:#248767}.tbx-1167:focus-visible{outline:2px solid #248767;outline-offset:3px}
@media (prefers-reduced-motion: reduce) {.tbx-1167, .tbx-1167 *, .tbx-1167::before, .tbx-1167::after, .tbx-1167 *::before, .tbx-1167 *::after {animation-duration:.01ms !important;transition-duration:.01ms !important;scroll-behavior:auto !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 status sections and data dashboards.
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.