:in-range

Avatar of Sara Cope
Sara Cope on (Updated on )

The :in-range pseudo selector in CSS matches input elements when their value is within the range specified as being acceptable. It is part of the CSS Selectors Level 4 specification which is currently in Editor’s Draft.

<input max="10" min="5" type="number">
input:in-range {
  border: 5px solid green;
}

I believe it’s only relevant on input[type=number]. Range inputs don’t allow values outside their min/max and it doesn’t make much sense on any other type of input. Perhaps text-y inputs with a maxlength, but the behavior on those in most browsers is to prevent entry past the max anyway.

Demo

Just like the code above, this input will have a green border when its value is between 5 and 10.

Browser support

This browser support data is from Caniuse, which has more detail. A number indicates that browser supports the feature at that version and up.

Desktop

ChromeFirefoxIEEdgeSafari
5350No7910.1

Mobile / Tablet

Android ChromeAndroid FirefoxAndroidiOS Safari
12312412310.3