CSS-checkboxgenerator

Resultaten

Standaardcheckboxes zien er op elk besturingssysteem anders uit en zijn moeilijk te herstijlen. Deze generator maakt pure CSS die een native checkbox het uiterlijk geeft dat jij wilt: kies de kleur van de aangevinkte staat, de randkleur, de grootte en de hoekradius. Omdat de stijl op een echt invoerveld wordt toegepast, blijven toetsenbordbediening, schermlezers en formulierverzending werken. Kopieer de gegenereerde CSS en voeg die toe aan je stylesheet.

Een checkbox stijlen

  1. 1

    Kies de kleuren

    Kies de achtergrondkleur voor de aangevinkte staat en de randkleur van de box.

  2. 2

    Bepaal de grootte

    Kies een grootte tussen 12 en 48 px.

  3. 3

    Bepaal de vorm

    Kies de hoekradius van de box, tot 20 px.

  4. 4

    Kopieer de CSS

    Bekijk het vinkje en kopieer de gegenereerde regel naar je stylesheet.

Wat de gegenereerde CSS doet

De regel wordt direct op het invoerveld toegepast met appearance: none, waardoor de standaardweergave verdwijnt zodat de box gestijld kan worden:

.checkbox {
  appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #d1d5db;
  border-radius: 4px;
  cursor: pointer;
  position: relative;
  transition: all 0.15s ease;
}

Wanneer de checkbox is aangevinkt, vult de box zich met de gekozen kleur en verschijnt een wit vinkje dat met CSS is getekend:

.checkbox:checked {
  background: #10b981;
  border-color: #10b981;
}
.checkbox:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 2px;
  width: 6px;
  height: 10px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

Waarom een native invoerveld

De stijl vervangt het element nooit door een div: het echte <input type="checkbox"> behoudt de toetsenbordbediening, de ondersteuning voor schermlezers en de formulierverzending. appearance: none verandert alleen het uiterlijk. Als je oudere Safari-versies moet ondersteunen, voeg dan -webkit-appearance: none toe aan de regel.

Focus en hover

De gegenereerde regel bevat een vloeiende kleurovergang, maar geen hover- of focusstijlen. Voeg je eigen regels toe voor :hover en :focus-visible, zodat toetsenbordgebruikers altijd zien waar de focus ligt, bijvoorbeeld een gekleurde omlijning rond de box.

Het vinkje

Het vinkje is een kleine witte lijn die 45 graden is gedraaid. Heb je een andere kleur of een dunner of dikker lijntje nodig, pas dan de waarden border en border-width in de ::after-regel aan.

Veelgestelde vragen

Nee. Hij levert alleen CSS op. Pas de klasse toe op een echt invoerveld in je formulier, met of zonder zichtbaar label.

Ja. De regel gebruikt appearance: none op het native invoerveld, dus de waarde wordt normaal verzonden en toetsenbord- en schermlezerondersteuning blijven intact.

De grootte stel je in de generator in, van 12 tot 48 px. De kleur en dikte van het vinkje pas je aan in de ::after-regel van de gegenereerde CSS.

Voor touchdoelen streef je naar minimaal 24 px, idealiter 44 px net als andere bedieningselementen. Houd de box in je ontwerp op één lijn met de labeltekst.

Gerelateerde tools

Tool beschikbaar in andere talen