HTML el atributo: min

El atributo min define el valor mínimo que es aceptable y válido para el <input> que contiene el atributo. Si el value del elemento es menor que esto, el elemento falla la restricción de validación. Este valor debe ser menor o igual que el valor del atributo max. Si se especifica un valor para min que no es un número válido, la entrada no tiene un valor mínimo.

Válido para los tipos de entrada numérica, incluidos los tipos date, month, week, time, datetime-local, number y range, y el elemento <meter>, el atributo min es un número que especifica el valor mínimo de un control de formulario para ser considerado válido.

Sintaxis

Si any no se establece explícitamente, los valores válidos para el número, los tipos de entrada de fecha/hora y los tipos de entrada de range son iguales a la base de paso a paso: el valor min y los incrementos del valor del paso, hasta el valor max, si se especifica. Por ejemplo, si tienes <input type="number" min="10" step="2">, cualquier entero par, 10 o mayor, es válido. Si se omite, <input type="number">, cualquier número entero es válido, pero los flotantes, como 4.2, no son válidos, ya que el step predeterminado es 1. Para que 4.2 sea válido, step se debería haber configurado en any, 0.1, 0.2, o cualquiera, el valor mínimo tendría que ser un número terminado en 0.2 , como <input type="number" min="-5.2">

Sintaxis para valores min por <input type="" />
Tipo del input Ejemplo Ejemplo
date yyyy-mm-dd <input type="date" min="2019-12-25" step="1">
month yyyy-mm <input type="month" min="2019-12" step="12">
week yyyy-W## <input type="week" min="2019-W23" step="">
time hh:mm <input type="time" min="09:00" step="900">
datetime-local yyyy-mm-ddThh:mm <input type="datetime-local" min="2019-12-25T19:30">
number number <input type="number" min="0" step="5" max="100">
range number <input type="range" min="60" step="5" max="100">

Nota: Cuando los datos ingresados por el usuario no se adhieren al valor mínimo establecido, el valor se considera inválido en la restricción de validación y coincidirá con la pseudoclase :invalid

Consulta Validación del lado del cliente y rangeUnderflow para más información.

Para el elemento <meter>, el atributo min define el límite numérico inferior del rango medido. Debe ser menor que el valor mínimo (atributo max), si se especifica. En ambos casos, si se omite, el valor predeterminado es 1.

Sintaxis para valores min para otros elementos
Tipo del input Sintaxis Ejemplo
<meter> number <meter id="fuel" min="0" max="100" low="33" high="66" optimum="80" value="40"> at 40/100</meter>

Impacto en step

Los valores de min y step definen cuáles son los valores válidos, incluso si el atributo step no está incluido, como el step predeterminado de 0.

Agrega un gran borde rojo alrededor de los <input>s no válidos:

input:invalid {
  border: solid red 3px;
}

Luego define un <input> con un valor mínimo de 7.2, omitiendo el atributo step, en donde el valor predeterminado es 1.

<input id="myNumber" name="myNumber" type="number" min="7.2" value="8">

Dado que step tiene el valor predeterminado de 1, los valores válidos incluyen 7.2, 8.2, 9.2 y así sucesivamente. El valor 8 no es válido. Dado que incluye un valor no válido, los navegadores compatibles mostrarán el valor como no válido.

Si no se incluye explícitamente, step tiene como valor predeterminado 1 para número y range, y 1 tipo de unidad (segundo, semana, mes, día) para los <input>s de tipo fecha/hora.

Compatibilidad del navegador

No compatibility data found. Please contribute data for "html.elements.attributes.min" (depth: 1) to the MDN compatibility data repository.

Especificaciones

Especificación Estado Comentario
HTML Living Standard
La definición de 'min attribute' en esta especificación.
Living Standard
HTML5
La definición de 'min attribute' en esta especificación.
Recommendation

Problemas de accesibilidad

Proporciona instrucciones para ayudar a los usuarios a comprender cómo completar el formulario y utilizar controles de formulario individuales. Indica cualquier entrada requerida y opcional, formatos de datos y otra información relevante. Cuando utilices el atributo min, asegúrate de que el usuario comprenda este requisito mínimo. Posiblemente sea suficiente proporcionar instrucciones dentro de un <label>. Si proporcionas instrucciones fuera de las etiquetas, lo cual permite un posicionamiento y un diseño más flexibles, considera usar aria-labelledby o aria-describedby.

Ve también