Pseudoklasa CSS :indeterminate

> Dodaj do ulubionych

Pseudoklasa CSS :indeterminate wybiera elementy formularza, których stan jest nieokreślony, czyli nie da się stwierdzić, czy są włączone, czy wyłączone. Dotyczy więc następujących elementów:

Przykłady użycia :indeterminate

W poniższym przykładzie domyślnie żaden z przycisków radiowych nie jest zaznaczony, więc znajdują się one w stanie nieokreślonym. Dlatego bezpośrednio po wyświetleniu strony będą miały czerwony obrys. Zniknie on u obu w momencie zaznaczenia jednego z nich przez użytkownika.

Ponadto obrys nie pojawiłby się, gdyby któryś z tych elementów miał zdefiniowany atrybut checked, ponieważ określałby on jego stan.

<style>
  :indeterminate {
    outline: 2px solid red;
  }
</style>
...
<label>A: <input type="radio" name="x" value="a"></label>
<label>B: <input type="radio" name="x" value="b"></label>

Efekt:

Efekt użycia pseudoklasy CSS :indeterminate

Ustawianie atrybutu IDL

Poniżej znajduje się przykład ustawienia atrybutu IDL elementu input typu checkbox na true.

<style>
:indeterminate {
  outline: 2px solid red;
}
</style>
...
<input type="checkbox" id="checkbox" value="x">
...
<script>
  let box = document.getElementById("checkbox");
  box.indeterminate = true;
</script>

To pole wyboru także będzie miało czerwone obramowanie:

Pole wyboru z czerwonym obramowaniem

Składnia :indeterminate

Składnia pseudoklasy :indeterminate:

:indeterminate {...}