2010-03-08 9 views
5

Esto es lo que tengo:¿Hay alguna forma de corregir el ancho de la lista desplegable?

<select id="box1"> 
    <option>ABCDEFG</option> 
</select> 

<select id="box2"> 
    <option>ABCDEFGHIJKLMNO</option> 
</select> 

tengo 2 listas Desplegar diferentes. Como el ancho de una lista desplegable depende del ancho del texto más largo en la opción, termino con 2 listas desplegables con 2 anchos diferentes. Esto hace que mi página web se vea ridícula.

Lo que quiero es configurarlo para que mis dos listas desplegables tengan el mismo ancho (prefiero que el ancho sea muy largo, de modo que incluso el elemento más largo no se truncará).

+1

Por favor, edite y elimine la palabra "longitud". Si quieres decir ancho, di ancho. Si está hablando de la cantidad de opciones que se muestran, vuelva a formular la pregunta por completo. – rjmunro

+0

Reparado. Srry por la confusión –

+0

Oye, no hay problema, es por eso que Stack Overflow es parcialmente wiki, para que todo se pueda mejorar. –

Respuesta

3

Puede usar CSS para establecer el ancho de su elemento <select>, pero será difícil hacer que el ancho coincida exactamente con un número dado de caracteres.

¿Por qué le gustaría que se recorte el texto de la opción?

+0

acaba de actualizar mi publicación. –

+0

simple de efectivo. Gracias. –

+0

Ah, Por cierto, la solución es configurarlos a un ancho muy amplio. Algunos navegadores incluso serán inteligentes y permitirán que el estado expandido (es decir, el bit que realmente cae) sea más ancho que el ancho establecido, de modo que no haya texto está recortado, mientras que mantiene los elementos del mismo ancho cuando no está expandido. –

5

Longitud que se refiere a la cantidad de opciones visibles ?? Si ese es el caso, use size. Aquí está el documentation. Avísame si te refieres a algo diferente.

Después EDIT: establecer el ancho para la selección. Pero sería difícil establecer el ancho para mostrar solo una longitud particular. Second Edit: No se puede hacer eso usando CSS, tienes que usar javascript. En cada cambio de la selección, debe ver cuál de los dos elementos tiene el ancho máximo y establecer el mismo para el otro.

+0

acaba de actualizar mi publicación ... disculpa por ser vago. No es 'size' lo que quiero usar. Quiero truncar la longitud de 1 opción, en lugar de la cantidad de opciones en la lista desplegable –

+0

. Solo actualizo mi publicación nuevamente. –

+0

¿No puedo simplemente establecer que el ancho sea realmente largo? De esta forma, no tendré que preocuparme por qué elemento es más largo –

-1

Es necesario utilizar JavaScript después se carga la página (darle a su lista id="listA"):

document.getElementById('listA').length = 20 

Este truncará con eficacia a los 20 artículos.

+0

No * necesita * utilizar Javascript en absoluto. Además, la longitud es el número de OPCIONES en el SELECTO ... no el número de OPCIONES mostradas – Dancrumb

+0

acaba de actualizar mi código, lo siento por ser vago :( –

4

Utilice la siguiente línea. Corregirá el ancho de la lista desplegable.

<select id='box1' style='width: 200px;'> 

<select id='box2' style='width: 200px;'> 

Si desea mencionar el ancho usando CSS, puede utilizar el siguiente código.

#container select { 
    width: 150px; 
} 
+0

Sí, esa es la respuesta. Muchas gracias, sin embargo, dado que Paul D Waite lo responde primero, tengo que darle crédito. :) –

Cuestiones relacionadas