Problema al usar capas

Eldanesh

Buenas.

Estoy diseñando una web que necesita ahora mismo el uso de capas para hacer un menú desplegable.

La situación es la siguiente, yo tengo en la celda de una tabla una imagen, y en la celda inferior varias columnas con imágenes de sustitución, y el comportamiento de que muestre u oculte capas según lo que necesito, el problema surge cuando voy a comprobarlo en varios navegadores.

En firefox se me ve sin ningún tipo de problemas:

http://img55.imageshack.us/img55/9775/firefox5re.jpg

Mientras que en explorer, se me mete una especie de margen inferior bajo la imagen, sin saber el por qué:

http://img50.imageshack.us/img50/6618/explorer3df.jpg

¿Alguien sabe que puede pasar?
Gracias.

Y

A mi me pasó usando javascript eso mismo, mi problema es que cargaba un div para el menú, el caso es que el internet explorer me medía el ancho y las posiciones distinto al resto de navegadores.

Lo solucioné con un hack, el problema es que no te lo valida la w3c pero funciona

primero marco el ancho y la posición (por ejemplo) para el resto de navegadores:

//que conste que es un ejemplo las medidas
width: 100px
height: 100px

y luego las del explorer

_width: 150px
_height: 150px

tal que quedaría así el css

width: 100px
height: 100px
_width: 150px
_height: 150px

El internet explorer soporte el hack de lo que quieras hacer con un _ delante, el resto de navegadores lo ignora. Así puedes ajustar las medidas como quieras. También funciona para las posiciones, left, top,bottom y right y otros más.

Puede que tu problema tenga alguna relación con lo que te he dicho.

guner

#2, para no saltarte el stándar yo incluyo los hacks css desde un comentario condicional de IE
http://msdn.microsoft.com/workshop/author/dhtml/overview/ccomment_ovw.asp

Y

pero nunca he sabido si las ie conditionals se pueden llamar desde un fichero.css

guner

No, incluye el css desde un condicional:

<!--[if lt IE 7]><link rel="stylesheet" href="png_hack.css" /><![endif]-->

o:

<style>
<!--[if lt IE 7]>@import url(png_hack.css);<[endif]-->
</style>

Y te creas una css con todos los hacks para IE, así otros navegadores no lo tienen que descargar.

Usuarios habituales