Home Werk
SaaS bouwenAI developmentAPI developmentMobile app developmentGoogle Ads managementHeadless ShopifyLaravel developmentNext.js developmentReact developmentTypeScript engineeringUI/UX designSEO & AEOWebshop bouwen
AI-oplossingenB2B-platformsE-commerceHorecaLead generationLogistiekOnderwijsProcesautomatiseringSaaS-platformsStartup MVPVastgoedZorg
JuridischZorgVastgoedFinanceHoreca
Den HaagRotterdamAmsterdamUtrechtEindhovenAlmereBredaArnhemNijmegenTilburgEnschedeGroningenLeidenDelftZoetermeerDen Bosch
Studio
OverWerkwijzeLabBlogContact

Voortgang: balk, stappen, laden, cirkel Nieuw

Vier voortgangsvormen in één set: stappen (2 van 4), lineaire balk met label en bedrag, een upload die naar succes of fout gaat, een cirkel en een onbepaalde laadbalk. Animeert naar de waarde zodra hij in beeld komt (IntersectionObserver + CSS-transities), met role="progressbar" en aria-valuenow. Bij reduced-motion staan de waarden direct goed en loopt de laadbalk niet.

Voortgang · vier vormen
Offerte aanvragenStap 2 van 4 · Woning
  1. Gegevens
  2. Woning
  3. Planning
  4. Bevestigen
Speeltuin Kralingen0%
€ 6.840 van € 9.000 opgehaald
plattegrond.pdf · 3,2 MB0%
Uploaden
0%
Profiel compleet
Agenda ophalen

Zo gebruik je het

  1. Plak de HTML op de plek waar het onderdeel moet komen.
  2. Zet de CSS in je stylesheet. Alle klassen hebben een eigen voorvoegsel, dus niets botst met je eigen opmaak.
  3. Voeg de JavaScript toe en roep init() aan met het element waar de HTML in staat.
<!-- Voortgang: balk, stappen, laden, cirkel · NedDev · eigen werk. -->
<div class="jouw-container">
<div class="prs">
  <div class="prs__head"><span class="prs__eyebrow">Voortgang · vier vormen</span><span class="prs__btns"><button class="prs__btn prs__replay" type="button">Opnieuw</button><button class="prs__btn prs__fail" type="button">Toon fout</button></span></div>
  <div class="prs__grid">
    <div class="prs__col">
      <div class="prs__item">
        <div class="prs__lbl"><span>Offerte aanvragen</span><b>Stap 2 van 4 · Woning</b></div>
        <ol class="prs__steps" aria-label="Offerte aanvragen, stap 2 van 4"><li class="is-done">Gegevens</li><li class="is-cur" aria-current="step">Woning</li><li>Planning</li><li>Bevestigen</li></ol>
      </div>
      <div class="prs__item">
        <div class="prs__lbl"><span id="prs-l1">Speeltuin Kralingen</span><b class="prs__num" data-to="76">0%</b></div>
        <div class="prs__bar" role="progressbar" aria-labelledby="prs-l1" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0" data-to="76"><span></span></div>
        <small class="prs__sub">€ 6.840 van € 9.000 opgehaald</small>
      </div>
      <div class="prs__item prs__up">
        <div class="prs__lbl"><span id="prs-l2">plattegrond.pdf · 3,2 MB</span><b class="prs__unum">0%</b></div>
        <div class="prs__bar prs__ubar" role="progressbar" aria-labelledby="prs-l2" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0"><span></span></div>
        <small class="prs__msg" aria-live="polite">Uploaden</small>
      </div>
    </div>
    <div class="prs__col prs__col--r">
      <div class="prs__ring" role="progressbar" aria-label="Profiel compleet" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0" data-to="80"><svg viewBox="0 0 44 44" aria-hidden="true"><circle class="prs__rbg" cx="22" cy="22" r="19"/><circle class="prs__rfg" cx="22" cy="22" r="19"/></svg><span class="prs__rnum">0%</span></div>
      <small class="prs__cap">Profiel compleet</small>
      <div class="prs__ind" role="progressbar" aria-label="Beschikbaarheid ophalen" aria-busy="true"><span></span></div>
      <small class="prs__cap">Agenda ophalen</small>
    </div>
  </div>
</div>
</div>

Meer uit cijfers & grafieken

Iets gezien dat je mooi vindt?

Zet het in je selectie en stuur hem op. Dan bouwen we je site eromheen, in jouw huisstijl.

Neem contact op →