Esta traducción la ha escrito una IA y todavía no la ha revisado ninguna persona. Leer esta página en inglés
Controles y la estructura que los rodea. Los botones, los campos, las listas de selección, los label y los fieldset tienen estilos sin clase, y también output, meter y progress. Una clase .luz-* añade un papel, un tamaño o las partes que un elemento sin clase no puede expresar.
Con estilos de elements/forms.css, sin clase. Un botón sin type, o con type="submit", es la acción principal; type="button" y type="reset" son la secundaria. Añade .luz-btn a un a que deba verse como botón, y para los papeles de peligro y fantasma y los tamaños.
Agrupa controles relacionados, como los datos de una dirección o un conjunto de botones de opción. Un legend como primer elemento hijo da nombre al grupo.
Con estilos de elements/forms.css, sin clase: una caja con la leyenda en su borde. Un label que contiene un botón de radio o una casilla la coloca junto al texto. Las clases del componente .luz-check-group y .luz-check-item dibujan ellas mismas la casilla y el punto.
Un form no tiene estilos propios: es estructura. Los controles que contiene llevan el aspecto, y el espacio entre ellos viene de sus propias reglas. Deja Nombre vacío y pulsa Enviar: el navegador detendrá el envío y explicará el motivo.
Con estilos de elements/forms.css, sin clase: los tipos de texto, correo, número, fecha y similares llenan su contenedor. Añade .luz-input a un campo de color o de archivo, y .luz-field a un label con texto de ayuda y error.
El nombre visible de un control. Relaciónalos mediante for e id: los lectores de pantalla lo anunciarán y, al hacer clic en él, se enfocará o cambiará el control.
Muestra una medida en una escala conocida, como el espacio de almacenamiento usado o la puntuación de una contraseña. Para mostrar el progreso de una tarea, usa progress.
6 of 10 GB
HTML
<label for="d-meter">Storage used, 6 of 10 GB</label>
<meter id="d-meter" min="0" max="10" low="3" high="8" optimum="2" value="6">6 of 10 GB</meter>
Con estilos de elements/forms.css, sin clase: el tamaño de la barra. El navegador dibuja sus colores; .luz-meter los dibuja en el color de marca.
Úsalo para mostrar el resultado de un cálculo o de una acción, vinculándolo con for a los controles que lo han producido. Su valor no se envía con el formulario. Disponible de forma general desde octubre de 2018.
Lectores de pantalla: MDN indica que muchos navegadores lo implementan como una región dinámica, así que los cambios se anuncian sin mover el foco. Las actualizaciones se anuncian como texto sin formato: quizá no se transmita que un enlace o un botón están dentro.
Muestra cuánto ha avanzado una tarea, por ejemplo, una carga. Omite value cuando no se puede saber el progreso: la barra indicará actividad sin mostrar una cantidad.
Con estilos de elements/forms.css, sin clase: el tamaño de la barra y el color de marca de su relleno. .luz-progress dibuja ella misma la pista y el relleno.
Con estilos de elements/forms.css, sin clase: la caja cerrada. La lista abierta es la del navegador. Añade .luz-select para dar estilo también a la lista abierta, donde el navegador pueda.
Repite la opción elegida dentro del botón de un select personalizable, para conservar sus iconos y formato. Es experimental: consulta la tabla de compatibilidad de MDN antes de depender de él.
Con estilos de elements/forms.css, sin clase: el aspecto de un campo de texto, más alto, que crece solo en vertical. Las clases .luz-input y .luz-input--textarea dan el mismo aspecto dentro de un .luz-field.
Los 22 tipos de input
Un mismo elemento, <input>, se convierte en controles distintos según su type. Cada uno tiene un ejemplo en vivo sin clase, salvo color y file, que llevan .luz-input; hidden e image no tienen nada que mostrar. El navegador valida y ofrece el teclado adecuado por sí solo: elige el tipo más específico antes de recurrir a un script.
type="button"
Un botón que no hace nada por sí solo: un script le da una función. Es mejor usar el elemento button, que puede contener marcado.
type="checkbox"
Activado o desactivado, o una de varias opciones que pueden estar activadas a la vez.
type="color"
Abre el selector de color del navegador. El valor siempre tiene el formato #rrggbb.
type="date"
Un día: año, mes y día. El valor es YYYY-MM-DD, independientemente del idioma de visualización.
type="datetime-local"
Una fecha y una hora sin zona horaria.
type="email"
Una dirección, o varias con multiple. El navegador comprueba el formato y muestra una @ en el teclado del móvil.
type="file"
Permite elegir archivos del dispositivo. accept los filtra y multiple permite elegir varios.
type="hidden"
No se muestra: su valor se envía con el formulario. No incluyas nada secreto, porque quien visita la página puede leerlo.
No hay nada que mostrar aquí.
type="image"
Un botón de envío con forma de imagen. Necesita src y alt. Es mejor usar un button que contenga un img.
No hay nada que mostrar aquí.
type="month"
Un año y un mes. En ordenadores, Firefox y Safari muestran un campo de texto: escribe YYYY-MM y añade pattern.
type="number"
Un número con incrementos: min, max y step. Para un código postal o un número de tarjeta, usa inputmode="numeric" en un campo de texto.
type="password"
Oculta los caracteres. Define autocomplete como current-password o new-password para que pueda ayudar un gestor de contraseñas.
type="radio"
Una opción entre varias que comparten un name.
type="range"
Un control deslizante entre min y max. No muestra el valor: acompáñalo de un elemento output.
type="reset"
Restablece los campos del formulario a sus valores iniciales. Casi nunca hace falta y se puede pulsar por error.
type="search"
Un término de búsqueda. Algunos navegadores añaden un botón para borrarlo.
type="submit"
Envía el formulario. Si no está dentro de uno, no hace nada.
type="tel"
Un número de teléfono. El navegador no comprueba su formato y muestra un teclado numérico en el móvil.
type="text"
El tipo predeterminado: una línea de texto libre.
type="time"
Una hora del día sin fecha.
type="url"
Una dirección web absoluta, que el navegador comprueba.
type="week"
Un año y una semana según ISO. En ordenadores, Firefox y Safari muestran un campo de texto: escribe YYYY-Www y añade pattern.