Iconen
Voor het toevoegen van iconen binnen de website kan gebruik gemaakt worden van een
icoon-lettertype via de classes icon
en icon-{naam}
.
Standaard maken deze classes gebruik van het meegeleverde icoon-lettertype van het thema. Zie beschikbare iconen voor meer informatie over deze standaard iconen. Daarnaast is het mogelijk om applicatie-specifieke iconen toe te voegen. Zie hiervoor andere iconen toevoegen.
Iconen gebruiken
Iconen kunnen toegepast worden op allerlei HTML-elementen, waaronder span
, a
, p
en button
.
Benodigde stappen
- Voeg de
icon
class toe aan het element. - Voeg een
icon-{naam}
class toe, bijvoorbeeldicon-check
om het check-icoon te gebruiken. - Voeg een toegankelijke naam toe binnen het element. Deze wordt visueel verborgen, maar is belangrijk voor screenreader-gebruikers en voor wanneer CSS niet geladen kan worden.
Voorbeelden
span
Visueel voorbeeld
GebruikerHTML-voorbeeld
<span class="icon icon-user">Gebruiker</span>
Icoon binnen linka
Visueel voorbeeld
InloggenHTML-voorbeeld
<a href="./icons"><span class="icon icon-user" aria-hidden="true"></span>Inloggen</a>
button
Visueel voorbeeld pseudo-element op button
Waarschuwing: Het voorbeeld met een pseudo-element direct op button wordt uitgefaseerd omdat het niet de voorkeur heeft omwille van toegankelijkheid. Gebruik in plaats hiervan een van de overige voorbeelden.
HTML-voorbeeld
<button class="icon icon-on-off" aria-label="Aan- of uitschakelen">Aan- of uitschakelen</button>
Visueel voorbeeld button
met span
HTML-voorbeeld
<button>
<span class="icon icon-on-off" aria-hidden="true"></span>Aan- of uitschakelen
</button>
svg
Voorbeelden met een svg-icoon uit de tabler iconen set.
Aandachtspunten:
- Als het icoon puur decoratief is, kan deze verborgen worden voor
screenreader-gebruikers. Dit kan doormiddel van een
aria-hidden="true"
op de svg. - Als het icoon informatief is dient deze een kort en duidelijk label te krijgen als
alternatief voor screenreader-gebruikers. Bijvoorbeeld:
aria-label="Gebruikersprofiel"
. Het icoon dient in dit geval ookrole="img"
te krijgen.
Visueel voorbeeld informatief icoon
HTML-voorbeeld
<svg
xmlns="http://www.w3.org/2000/svg"
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
class="icon icon-tabler icons-tabler-outline icon-tabler-user"
role="img"
aria-label="Gebruikersprofiel">
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
<path d="M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0" />
<path d="M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2" />
</svg>
svg
binnen een link
Visueel voorbeeld
InloggenHTML-voorbeeld
<a href="./icons">
<svg
xmlns="http://www.w3.org/2000/svg"
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
class="icon icon-tabler icons-tabler-outline icon-tabler-user"
aria-hidden="true">
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
<path d="M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0"/>
<path d="M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2" />
</svg>
Inloggen
</a>
svg
binnen een button
Visueel voorbeeld
HTML-voorbeeld
<button>
<svg
xmlns="http://www.w3.org/2000/svg"
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
class="icon icon-tabler icons-tabler-outline icon-tabler-power"
aria-hidden="true">
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
<path d="M7 6a7.75 7.75 0 1 0 10 0"/>
<path d="M12 4l0 8" />
</svg>
Aan- of uitschakelen
</button>
span
met svg-icoon
Visueel voorbeeld
InloggenHTML-voorbeeld
<span>
<svg
xmlns="http://www.w3.org/2000/svg"
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
class="icon icon-tabler icons-tabler-outline icon-tabler-user"
aria-hidden="true">
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
<path d="M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0"/>
<path d="M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2" />
</svg>
Inloggen
</span>
Beschikbare iconen
De thema's worden geleverd met een icoon-lettertype en met icon-{naam}
classes voor een set standaard iconen:
Elk thema zou ernaar moeten streven de iconen in deze set te implementeren. Iconen die in
een thema niet beschikbaar zijn, moeten door het thema als □ (het unicode-character U+25A1
"missing glyph") aangeboden worden. Extra iconen kunnen als
aparte module aangeboden worden.
Andere iconen toevoegen
Er zijn twee manieren om iconen te gebruiken die niet beschikbaar zijn in de icoon-sets van het thema:
- Gebruik een losse icoon-afbeelding.
- Voeg een applicatie-specifieke icoon-set toe. Zie icoon-set toevoegen voor instructies.