Foros del Web » Programando para Internet » Javascript »

Posicionar Capa en Opera

Estas en el tema de Posicionar Capa en Opera en el foro de Javascript en Foros del Web. Buenos días. Tras haber hecho varias pruebas, em encuentro con un problema. En IE y Firefox, funciona correctamente, pero en Opera no. La situación es ...
  #1 (permalink)  
Antiguo 26/10/2005, 01:50
Avatar de el_javi  
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 19 años, 1 mes
Puntos: 10
Posicionar Capa en Opera

Buenos días.

Tras haber hecho varias pruebas, em encuentro con un problema.

En IE y Firefox, funciona correctamente, pero en Opera no.

La situación es la siguiente:
Tengo un documento, con una celda de un color, y quiero posicionar sobre esa celda una capa.

Para ello uso este código:
Código:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
	<title>Untitled</title>
	<script language="JavaScript1.1" type="text/javascript">
		function recolocar()
		{
//			alert("X = " + document.getElementById("contenido").offsetLeft + "   Y = " + document.getElementById("contenido").offsetTop)
			document.getElementById("capa").style.top = document.getElementById("contenido").offsetTop;
			document.getElementById("capa").style.left = document.getElementById("contenido").offsetLeft;
		}
	</script>
</head>

<body style="margin:0px" onload="recolocar()">
<table cellpadding="0" cellspacing="0" style="width:100%;height:100%" border="0">
	<tr>
		<td width="100%" height="100%" valign="middle" align="center">
			<table cellpadding="0" cellspacing="0" style="width:200px;height:20px" border="0">
				<tr>
					<td width="200" height="20" bgcolor="#0000ff" id="contenido" style="position:relative">dasdsadsa</td>
				</tr>
			</table>
		</td>
	</tr>
</table>

<div id="capa" style="visibility:visible;z-index:5;position:absolute;top:0px;left:0px;width:150px;height:200px;border:1px solid Red">
	<table cellpadding="0" cellspacing="0" style="width:150px;height:200px;background-color:green" border="0">
		<tr>
			<td width="100%" height="100%">CAPA</td>
		</tr>
	</table>
</div>
</body>
</html>
Me gustaría que alguien me dijera porque en Opera, las propiedades offsetTop y offsetTop de una celda (en posición relativa) me dan como valores 0.

Espero alguna aclaración.

Muchas gracias

  #2 (permalink)  
Antiguo 26/10/2005, 01:56
Avatar de el_javi  
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 19 años, 1 mes
Puntos: 10
Solucionado Position:relative en Opera

Je!!! Creo que ya no me hace falta que me deis detalles sobre ello.

He encontrado algo de documentación, y he visto que para que funcione correctamente, he de añadirle al style del TD propiedad de bloque (display:inline-block).

Esto me hace que quede "como un bloque" y así sus propiedades Offset, son las correctas.

De todas formas... gracias a todos

Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:38.