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.
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
- Otros elementos relacionados de formularios:
<form>
,<legend>
,<label>
,<button>
,<option>
,<datalist>
,<optgroup>
,<fieldset>
,<textarea>
,<keygen>
,<input>
,<output>
,<progress>
and<meter>
.