Mozilla's getting a new look. What do you think? https://mzl.la/brandsurvey

<select>

Esta traducción está incompleta. Por favor, ayuda a traducir este artículo del inglés.

Resumen

El elemento select (<select>) de HTML representa un control que muestra un menú de opciones. Las opciones contenidas en el menú son representadas por elementos <option>, los cuales pueden ser agrupados por elementos <optgroup>. La opcion puede estar preseleccionada por el usuario.

Contenido

Content categories Elementos flow content, phrasing content, interactive content, listed, labelable, resettable, y submittable form-associated.
Contenido permitido Uno o mas elementos <option> o <optgroup>.
Omisión de etiquetas Ninguna, ambas etiquetas son obligatorias
Elementos padre permitidos Cualquier elemento que permita phrasing content.

Atributos

Este elemento incluye global attributes.

autofocus HTML5
Este atributo permite especificar un formulario de control que debería tener enfoque de entrada cuando se carga la página, a no ser que el usuario lo sobreescriba, por ejemplo, escribiendo un control diferente. Solo un elemento formulario puede tener el elemento de enfoque de entrada por documento, por lo cual es un atributo booleano.
disabled
El atributo booleano especifica que el usuario no puede interactuar con el control. Si este atributo no está especificado, el control hereda los ajustes del campo que lo contiene, por ejemplo del fielset; si no hay elemento contenido con el atributo disabled, entonces el control se considera enable (activado).
form HTML5
El elemento formulario al cual el select está asociado (su propietario del formulario). Si este atributo está especificado, su valor deberá ser el ID de un formulario en el mismo documento. Esto te permite situar elementos en cualquier parte del documento, no solo de manera descendiente con respecto a su elemento formulario.
multiple
Este elemento booleano indica que se pueden seleccionar múltiples opciones de la lsita. Si no está especificado, solo se podrá seleccionar una opción cada vez.
name
El nombre del elemento de control.
required HTML5
Es un elemento boooleano que indica si la opcion puede quedar sin seleccionar o si es requerida.
size
Si el control se presenta como una lista con scroll en caja, este atributo representa el numero de filas que la list tendrá visible la primera vez. Los navegadores no están requeridos a presentar un elemento select como una lista con escroll en caja. El valor por defecto es cero.
Nota de Firefox: De acuerdo con las especificaciones de HTML5, el tamaño por defecto debe ser 1; sin embargo, en la práctica, esto hace que se rompan algunas páginas webs, y ningun otro navegador actualmente hace esto, así que Mozilla ha optado por continuar usando 0 desde que empezó con Firefox.

DOM Interface

Este elemento implementa la interfaz HTMLSelectElement.

Ejemplos

<!-- The second value will be selected initially -->
<select name="select">
  <option value="value1">Value 1</option> 
  <option value="value2" selected>Value 2</option>
  <option value="value3">Value 3</option>
</select>

Resultado

Notas

El contenido de este elemento es estático y no editable.

El siguiente ejemplo muestra como simular una lista con opciones editables, pero ten cuidado ya que algunos lectores de pantallas y dispositivos de ayuda no lo interpretarán de forma correcta; este ejemplo sería html inválido si usas los elementos correctos:

This is an example de un select editable mediante un <fieldset> de radioboxes y textboxes (escrito en CSS puro, sin JavaScript), 

Especificaciones

Especificación Estado Comentario
HTML5
The definition of '<select>' in that specification.
Recommendation  
HTML 4.01 Specification
The definition of '<select>' in that specification.
Recommendation  

Compatibilidad con Navegadores

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 1.0 1.0 (1.7 or earlier) (Yes) (Yes) (Yes)
required attribute (Yes) 4.0 (2.0) 10 (Yes) (Yes)
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) [1] 1.0 (1.0) [2] (Yes) (Yes) (Yes)
required attribute (Yes) 4.0 (2.0) No support (Yes) (Yes)

 

[1] En la aplicación navegador para Android 4.1 (y posiblemente en versiones posteriores), hay un error cuando el menu triangulo indicador al lado de un elemento <select> no se muestra si background, border, o border-radius estilos están aplicados al <select>.

[2] Firefox para Android, por defecto, establece un background-image gradiente en todos los elementos <select multiple>. Esto puede desactivarse usando  background-image: none.

[3] Históricamente, Firefox ha permitido eventos de teclado y ratón para mostrar desde el elemento <option> al elemento padre <select>. Esto no ocurre en Chrome, sin embargo, aunque este comportamiento sigue apareciendo de manera incosciente en muchos navegadores. Para una mayor compatibilidad Web (y por razones técnicas), cuando Firefox está en modo multitarea el elemento <select> se muestra como una lista descendente. Este comportamiento se produce sin cambios si <select>se presenta como elemento en línea y tiene multipleas atributos definidos o tiene un atributo de tamaño cuyo valor sea mayor que uno. Mejor que ver el elemento <option> para eventos, debería mirar el elemento de enventos {event("change")}} en <select>. Ver bug 1090602 para detalles.

Tanto Chrome como Safari ignoran border-radius en los elementos <select> a no ser que -webkit-appearance esté invalidado a un valor apropiado.

Ver también

Etiquetas y colaboradores del documento

 Colaboradores en esta página: AleV
 Última actualización por: AleV,