[jQuery-es] Overflow de texto en efectos

Choan C. Gálvez choan.galvez en gmail.com
Mie Dic 20 10:56:31 PST 2006


Jelou, tocayo.

On 12/13/06, Juan G. Hurtado <juan.g.hurtado en gmail.com> wrote:
> Buenas,
>
> tengo un pequeño problema con las animaciones. Explico:
>
> - Uso show('slow') para mostrar un DIV con fondo y borde, etc.
> - Dentro de ese DIV tengo un enlace que muestra un contenido generado
> en el javascript.
> - Ese contenido que genero y muestro, se sale del DIV.
>
> En IE6 no pasa este fallo, pero en Firefox, Safari, etc. sí. ¿Teneis
> alguna sugerencia? Adjunto el código.

Te describo el problema y tú pones la solución, ¿vale?

Cuando se usan los métodos `show` (con velocidad), `slideDown` y algún
otro que no me viene a la cabeza, lo que hace jquery es aplicar
`height` mediante estilos desde 0 hasta la altura total del elemento.

El problema es que esa altura total del elemento se da en píxeles.

Ahora... cuando el elemento _crece_, Explorer se comporta según sus
feas costumbres y se pasa la altura asignada por el forro de los
mismos. Los navegadores _más mejores_ hacen lo que tienen que hacer y
respetan la altura asignada.

Entonces... opciones...

1. usas un callback que asigne `height: auto` al elemento (o quizá
mejor dejar el height en blanco);

2. antes de añadir el elemento, asignas el `height: auto`

3. actualizas la versión de jQuery, yo juraría que en las últimas ese
bug está corregido.

Salud.

-- 
Choan

Scriptia. Javascript y buenas prácticas en español.
<http://blog.scriptia.net/>


Más información sobre la lista de distribución jquery-es