Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Richtlijnen formulieren: Links versus buttons, wanneer gebruik je welk element? #210

Closed
rianrietveld opened this issue Dec 4, 2023 · 2 comments
Assignees
Labels
documentation Improvements or additions to documentation

Comments

@rianrietveld
Copy link

rianrietveld commented Dec 4, 2023

In de richtlijnen voor formulieren kan de onderstaande tekst worden opgenomen. Maar hiertegen zijn goede bezwaren.
Als NLDS is het belangrijk dat we een gefundeerde bruikbare richtlijn hebben waar consensus over is.
We voeren de discussie hierover bij dit issue.

Deze richtlijn is voor nu niet opgenomen in de docimentatie
Discussie bij orginele PR: nl-design-system/documentatie#400
nl-design-system/documentatie#400 (comment)

Links versus buttons, wanneer gebruik je welk element?

Het fundamentele verschil tussen een button en een link is het doel en de opvolgende actie.

Een link verwijst naar een andere locatie, op of buiten de webpagina. Een button zorgt voor een actie, zoals het formulier versturen, informatie wissen, een modal openen of het uploaden van een bestand.

Ook de toetsenbordinteractie is anders. Een link bestuur je met alleen de “enter”-toets, een button bestuur je met de “enter”-toets of de spatiebalk. Screenreadergebruikers krijgen de informatie “button” of “link” voorgelezen als het element focus krijgt en hebben dus verschillende verwachtingen van de werking.

Maar hoe gaan we hiermee om in het design? Standaard ziet een button eruit als een knop en een link is een onderstreept woord of zin.
Soms wordt hiervan afgeweken om een knop minder visueel gewicht te geven. Kies dan voor een ander ontwerp van de button en gebruik dat consistent binnen de website. Kies niet voor een button die eruitziet als een link en andersom.

Door te zorgen voor een consistente weergave van links en buttons, voldoe je aan:

@rianrietveld
Copy link
Author

Ook relevant is de discussie bij gov.uk: (alphagov/govuk_elements#272 (comment))

@bramsmulders
Copy link

In het verleden heb ik eigenlijk altijd 2 componenten(of styles) gehad in een codebase: Link & Button.

Semantisch:

Allebei deze componenten kunnen een a of button element zijn aan de hand van hun context. Navigeer je ergens naartoe kies je een a, trigger je een actie op dezelfde pagina of controleer je iets binnen een formulier kies je button.

Visueel

Een Link component kan ook een button element zijn, bijvoorbeeld: Een modal trigger in een lopende tekst wil je semantisch een button laten zijn, maar visueel moet het een link zijn.
Daarnaast kan een Button component ook gebruikt worden als CTA knop naar een andere pagina. Dan moet het semantisch een a zijn, maar visueel een knop.

Ik denk dus dat je prima beiden door elkaar kunt gebruiken, maar dat de "intent" duidelijk moet zijn.

@Yolijn Yolijn transferred this issue from nl-design-system/documentatie Jan 21, 2024
@Yolijn Yolijn added the documentation Improvements or additions to documentation label Jan 21, 2024
@nl-design-system nl-design-system locked and limited conversation to collaborators Jan 21, 2024
@Yolijn Yolijn converted this issue into discussion #211 Jan 21, 2024

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

5 participants