Voortgang
Documentatie en voorbeelden voor het gebruik van aangepaste voortgangsbalken van Bootstrap met ondersteuning voor gestapelde balken, geanimeerde achtergronden en tekstlabels.
Hoe het werkt
Progress-componenten zijn gebouwd met twee HTML-elementen, wat CSS om de breedte in te stellen en een paar attributen. We gebruiken het HTML5- <progress>
element niet , zodat u voortgangsbalken kunt stapelen, animeren en er tekstlabels overheen kunt plaatsen.
- We gebruiken de
.progress
als wrapper om de maximale waarde van de voortgangsbalk aan te geven. - We gebruiken de inner
.progress-bar
om de voortgang tot nu toe aan te geven. - Het
.progress-bar
vereist een inline-stijl, hulpprogramma-klasse of aangepaste CSS om hun breedte in te stellen. - Het vereist ook
.progress-bar
enkele attributen om het toegankelijk te maken.role
aria
Voeg dat allemaal samen en je hebt de volgende voorbeelden.
<div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress">
<div class="progress-bar" role="progressbar" style="width: 25%" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress">
<div class="progress-bar" role="progressbar" style="width: 50%" aria-valuenow="50" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress">
<div class="progress-bar" role="progressbar" style="width: 75%" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress">
<div class="progress-bar" role="progressbar" style="width: 100%" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100"></div>
</div>
Bootstrap biedt een handvol hulpprogramma's voor het instellen van de breedte . Afhankelijk van uw behoeften kunnen deze helpen bij het snel configureren van de voortgang.
<div class="progress">
<div class="progress-bar w-75" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div>
</div>
Etiketten
Voeg labels toe aan uw voortgangsbalken door tekst in het .progress-bar
.
<div class="progress">
<div class="progress-bar" role="progressbar" style="width: 25%;" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100">25%</div>
</div>
Hoogte
We stellen alleen een height
waarde in op de .progress
, dus als je die waarde wijzigt, wordt de binnenste .progress-bar
automatisch overeenkomstig aangepast.
<div class="progress" style="height: 1px;">
<div class="progress-bar" role="progressbar" style="width: 25%;" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress" style="height: 20px;">
<div class="progress-bar" role="progressbar" style="width: 25%;" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100"></div>
</div>
Achtergronden
Gebruik achtergrondprogrammaklassen om het uiterlijk van afzonderlijke voortgangsbalken te wijzigen.
<div class="progress">
<div class="progress-bar bg-success" role="progressbar" style="width: 25%" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress">
<div class="progress-bar bg-info" role="progressbar" style="width: 50%" aria-valuenow="50" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress">
<div class="progress-bar bg-warning" role="progressbar" style="width: 75%" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress">
<div class="progress-bar bg-danger" role="progressbar" style="width: 100%" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100"></div>
</div>
Meerdere balken
Voeg indien nodig meerdere voortgangsbalken toe aan een voortgangscomponent.
<div class="progress">
<div class="progress-bar" role="progressbar" style="width: 15%" aria-valuenow="15" aria-valuemin="0" aria-valuemax="100"></div>
<div class="progress-bar bg-success" role="progressbar" style="width: 30%" aria-valuenow="30" aria-valuemin="0" aria-valuemax="100"></div>
<div class="progress-bar bg-info" role="progressbar" style="width: 20%" aria-valuenow="20" aria-valuemin="0" aria-valuemax="100"></div>
</div>
Gestreept
Voeg toe .progress-bar-striped
aan een willekeurige .progress-bar
om een streep toe te passen via een CSS-verloop over de achtergrondkleur van de voortgangsbalk.
<div class="progress">
<div class="progress-bar progress-bar-striped" role="progressbar" style="width: 10%" aria-valuenow="10" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress">
<div class="progress-bar progress-bar-striped bg-success" role="progressbar" style="width: 25%" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress">
<div class="progress-bar progress-bar-striped bg-info" role="progressbar" style="width: 50%" aria-valuenow="50" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress">
<div class="progress-bar progress-bar-striped bg-warning" role="progressbar" style="width: 75%" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div>
</div>
<div class="progress">
<div class="progress-bar progress-bar-striped bg-danger" role="progressbar" style="width: 100%" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100"></div>
</div>
Geanimeerde strepen
Het gestreepte verloop kan ook worden geanimeerd. Toevoegen .progress-bar-animated
aan .progress-bar
om de strepen van rechts naar links te animeren via CSS3-animaties.
<div class="progress">
<div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100" style="width: 75%"></div>
</div>
Sass
Variabelen
$progress-height: 1rem;
$progress-font-size: $font-size-base * .75;
$progress-bg: $gray-200;
$progress-border-radius: $border-radius;
$progress-box-shadow: $box-shadow-inset;
$progress-bar-color: $white;
$progress-bar-bg: $primary;
$progress-bar-animation-timing: 1s linear infinite;
$progress-bar-transition: width .6s ease;
Sleutelframes
Gebruikt voor het maken van de CSS-animaties voor .progress-bar-animated
. Inbegrepen in scss/_progress-bar.scss
.
@if $enable-transitions {
@keyframes progress-bar-stripes {
0% { background-position-x: $progress-height; }
}
}