Generator checkboxów CSS

Wyniki

Domyślne checkboxy wyglądają inaczej na każdym systemie operacyjnym i trudno je zmienić. Ten generator tworzy czysty CSS, który nadaje zwykłemu znacznikowi wyboru wygląd, jakiego chcesz: wybierz kolor zaznaczonego stanu, kolor obramowania, rozmiar i promień narożników. Ponieważ styl jest stosowany do prawdziwego pola input, działają klawiatura, czytniki ekranu i wysyłanie formularzy. Skopiuj wygenerowany CSS i dodaj go do swojego arkusza stylów.

Jak wystylizować checkbox

  1. 1

    Wybierz kolory

    Ustaw kolor tła dla zaznaczonego stanu i kolor obramowania pola.

  2. 2

    Ustaw rozmiar

    Wybierz rozmiar od 12 do 48 px.

  3. 3

    Ustaw kształt

    Wybierz promień narożników pola, maksymalnie 20 px.

  4. 4

    Skopiuj CSS

    Sprawdź podgląd znacznika i skopiuj wygenerowaną regułę do swojego arkusza stylów.

Co robi wygenerowany CSS

Reguła jest stosowana bezpośrednio do pola input z właściwością appearance: none, która usuwa domyślny wygląd, aby można było wystylizować pole:

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

Gdy checkbox jest zaznaczony, pole wypełnia się wybranym kolorem i pojawia się biały znacznik wyboru narysowany w CSS:

.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);
}

Dlaczego prawdziwe pole input

Styl nigdy nie zamienia elementu na div: prawdziwe <input type="checkbox"> zachowuje obsługę klawiatury, czytników ekranu i wysyłanie formularzy. appearance: none zmienia tylko wygląd. Jeśli musisz obsługiwać starsze wersje Safari, dodaj do reguły -webkit-appearance: none.

Fokus i najechanie

Wygenerowana reguła zawiera płynne przejście koloru, ale nie zawiera stylów najechania ani fokusu. Dodaj własne reguły dla :hover i :focus-visible, aby użytkownicy klawiatury zawsze widzieli, gdzie jest fokus, na przykład kolorowy obrys wokół pola.

Znacznik wyboru

Znacznik to mała biała linia obrócona o 45 stopni. Jeśli potrzebujesz innego koloru albo cieńszej lub grubszej kreski, edytuj wartości border i border-width w regule ::after.

Najczęściej zadawane pytania

Nie. Generuje tylko CSS. Zastosuj klasę do prawdziwego pola input w swoim formularzu, z widoczną etykietą lub bez.

Tak. Reguła używa appearance: none na prawdziwym polu input, więc wartość jest wysyłana normalnie, a obsługa klawiatury i czytników ekranu pozostaje nienaruszona.

Rozmiar ustawia się w generatorze, od 12 do 48 px. Kolor i grubość znacznika edytuje się w regule ::after wygenerowanego CSS.

Dla celów dotykowych celuj w co najmniej 24 px, najlepiej 44 px jak w przypadku innych elementów. W projekcie wyrównaj pole do tekstu etykiety.

Powiązane narzędzia

Narzędzie jest dostępne w innych językach