Home Work
SaaS developmentAI developmentAPI developmentMobile app developmentGoogle Ads managementHeadless ShopifyLaravel developmentNext.js developmentReact developmentTypeScript engineeringUI/UX designSEO & AEOEcommerce development
AI solutionsB2B platformsE-commerceHospitalityLead generationLogisticsEducationProcess automationSaaS platformsStartup MVPReal estateHealthcare
LegalHealthcareReal estateFinanceHospitality
The HagueRotterdamAmsterdamUtrechtEindhovenAlmereBredaArnhemNijmegenTilburgEnschedeGroningenLeidenDelftZoetermeerDen Bosch
Studio
AboutProcessLabBlogContact

Inklapbare zijbalk voor een klantportaal New

Sidebar for a client portal that collapses into a narrow icon rail. When collapsed the label appears as a tooltip next to the icon on hover and keyboard focus, so every link keeps a name. The button reports its state with aria-expanded, Ctrl+B also toggles it and the choice is remembered in localStorage (with try/catch). On a narrow screen it starts collapsed. For portals, dashboards and admin areas with five to ten main sections.

Overzicht

Openstaand: € 1.284,50 in 2 facturen. De eerstvolgende vervalt op 20 oktober.

How to use it

  1. Paste the HTML where the navigation & menus should appear.
  2. Add the CSS to your stylesheet. All classes are prefixed, so nothing clashes with your own styles.
  3. Add the JavaScript and call init() with the element that contains the HTML.
<!-- Inklapbare zijbalk voor een klantportaal · NedDev · eigen werk. -->
<div class="jouw-container">
<div class="zbp">
<aside class="zbp__side" id="zbp-side">
<div class="zbp__top"><span class="zbp__logo" aria-hidden="true">W</span><span class="zbp__name">Woonzorg Delta</span>
<button class="zbp__tgl" type="button" aria-expanded="true" aria-controls="zbp-side" aria-label="Zijbalk inklappen"><svg viewBox="0 0 16 16" aria-hidden="true"><path d="M10 3L5 8l5 5"/></svg></button></div>
<nav class="zbp__nav" aria-label="Portaal">
<a class="zbp__a" href="#zbp-overzicht" aria-current="page"><svg viewBox="0 0 24 24" aria-hidden="true"><rect x="4" y="4" width="7" height="7" rx="1"/><rect x="13" y="4" width="7" height="7" rx="1"/><rect x="4" y="13" width="7" height="7" rx="1"/><rect x="13" y="13" width="7" height="7" rx="1"/></svg><span class="zbp__lab">Overzicht</span></a>
<a class="zbp__a" href="#zbp-facturen"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M6 3h12v18l-3-2-3 2-3-2-3 2z"/><path d="M9 8h6M9 12h6"/></svg><span class="zbp__lab">Facturen</span><b class="zbp__badge">2</b></a>
<a class="zbp__a" href="#zbp-documenten"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M7 3h7l5 5v13H7z"/><path d="M14 3v5h5"/></svg><span class="zbp__lab">Documenten</span></a>
<a class="zbp__a" href="#zbp-afspraken"><svg viewBox="0 0 24 24" aria-hidden="true"><rect x="4" y="5" width="16" height="15" rx="2"/><path d="M4 10h16M9 3v4M15 3v4"/></svg><span class="zbp__lab">Afspraken</span></a>
</nav>
</aside>
<main class="zbp__main">
<h3 class="zbp__h">Overzicht</h3>
<p class="zbp__t">Openstaand: &euro; 1.284,50 in 2 facturen. De eerstvolgende vervalt op 20 oktober.</p>
</main>
</div>
</div>

More navigation & menus

Seen something you like?

Add it to your selection and send it over. We build your site around it, in your brand.

Get in touch →