Selektory#
Pseudokalsa przekroczenia zakresu#
:out-of-range { /* deklaracje */ }
Pseudoklasa :out-of-range
reprezentuje elementy interfejsu użytkownika (wejścia), których wartość nie zawiera się w zakresie, w odniesieniu do ograniczeń zakresu, jak określono w języku dokumentu. W sytuacji kiedy ograniczenia zakresu w ogóle nie mają zastosowania do elementu, to nie należy on ani do :out-of-range
ani do :in-range
.
Najnowszy HTML5 podaje listę elementów z przekroczonym zakresem, które będą pasowały do pseudoklasy :out-of-range
. Ogólnie rzecz biorąc dotyczy to elementów, które są kandydatami dla ograniczającej walidacji, mają ograniczenia zakresu i aktualna wartość elementu jest poniżej lub powyżej tych ograniczeń, czyli znajduje się poza zakresem.
Prosty przykład:
<!DOCTYPE html>
<html>
<head>
<style>
:in-range {outline: 5px solid green; border: 5px solid green;}
:out-of-range {outline: 5px solid red; border: 5px solid red;}
</style>
</head>
<body>
<p><label>Cyfry (dowolne): <input type="number"></label></p>
<p><label>Cyfry (min=5): <input type="number" min="5" value="5"></label></p>
<p><label>Cyfry (max=10): <input type="number" max="10" value="5"></label></p>
<p><label>Cyfry (min=5 max=10): <input type="number" min="5" max="10" value="5"></label></p>
<p><label>Czas (min=21:00)<input type="time" min="21:00" step="60" value="21:00">
<p><label>Czas (max=06:00)<input type="time" max="06:00" step="60" value="06:00">
<p><label>Czas (min=21:00 max=06:00)<input type="time" min="21:00" max="06:00" step="60" value="21:00"></label></p>
</body>
</html>
Na chwilę obecną żadna aktualna przeglądarka nie obsługuje pseudoklasy :out-of-range
prawidłowo (IE w ogóle). Nie wszystkie typy kontrolek i nie wszystkie przypadki są interpretowane zgodnie z najnowszymi wymaganiami.