Foros del Web » Creando para Internet » HTML »

iframe y height=100%, problema

Estas en el tema de iframe y height=100%, problema en el foro de HTML en Foros del Web. Intento darle un height de 100% a un iframe para que se adapte al ancho de una tabla, pero falla, sale un height completamente arbitrario, ...
  #1 (permalink)  
Antiguo 23/07/2004, 07:31
Avatar de mrgubu  
Fecha de Ingreso: febrero-2002
Ubicación: Granada
Mensajes: 428
Antigüedad: 15 años, 9 meses
Puntos: 2
iframe y height=100%, problema

Intento darle un height de 100% a un iframe para que se adapte al ancho de una tabla, pero falla, sale un height completamente arbitrario, y el scroll sale cortado. Mirad en

http://granadalinks.com/coboabogados...nistrativo.asp

¿Cómo podría arreglar esto?
  #2 (permalink)  
Antiguo 23/07/2004, 08:23
Avatar de PatomaS
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: En alguna otra parte
Mensajes: 4.656
Antigüedad: 13 años, 9 meses
Puntos: 63
Hola

Aquí te paso una página de ejemplo en la que puedes ver una tabla al 100% de la pantalla y dentro de ella, un iframe al 100% de altura dentro de la tabla.

Código:
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">
* {
	border: 0px;
	margin: 0px;
	padding: 0px;
}
.miMarco {
	width: 100%;
	height: 100%;
	border: 1px solid #ff0000;
}
#tabla {
	width: 100%;
	height: 100%;
	border: 1px solid #00ff00;
}
</style>
<script type="text/javascript">
<!--
	function redimensionar() {
		if (navigator.appName == 'Microsoft Internet Explorer') {
			document.getElementById('tabla').style.height = '100%';
		} else  {
			document.getElementById('tabla').style.height = window.innerHeight + 'px';
		}
	}
//-->
</script>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>

<body onload="javascript:redimensionar()">
<table id="tabla">
     <tr>
          <td style="width: 20%;">&nbsp;</td>
          <td style="width: 60%; height: 80%;">
			<iframe class="miMarco" src="Untitled-3.htm"></iframe>
		</td>
          <td style="width: 20%;">&nbsp;</td>
     </tr>
</table>
</body>
</html>
Funciona en:
Explorer 6.0 sp1
firefox 0.8
firefox 0.9
netscape 7.0

No funciona en:
Opera 7.23
firebird 0.7
netscape 4.x

Espero que te sirva.

Felicidad
__________________
¡ hey, hou, hou, hey !
  #3 (permalink)  
Antiguo 23/07/2004, 11:47
Avatar de mrgubu  
Fecha de Ingreso: febrero-2002
Ubicación: Granada
Mensajes: 428
Antigüedad: 15 años, 9 meses
Puntos: 2
Gracias Pantomas, tu ejemplo funciona bien, pero cuando yo lo aplico a mi caso no va. Debe ser un problema con los anidamientos, ya que he probado a colocar el id=table en distintos sitios (siempre en tablas que engloban el iframe), y produce distintos resultados, pero nunca consigo que la altura del iframe se readapte a la tabla que la contiene.

Además, si no funciona al menos en ie5 o ie5.5, pues creo que sería muy atrevido usar este script, ¿no?
  #4 (permalink)  
Antiguo 23/07/2004, 13:06
Avatar de PatomaS
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: En alguna otra parte
Mensajes: 4.656
Antigüedad: 13 años, 9 meses
Puntos: 63
Hola

Yo no he dicho que no funcione en ie 5 o 5.5, solo que no lo he probado y no puedo asegurar que funcione. En mi opinión debería funcionar, pero lo mejor es que lo pruebes para que te sientas seguro.

Respecto al funcionamiento del script, simplemente lo que hace, es qenerar un tamaño a una capa, en mi caso el 100%, y luego ajusta la tabla al 100% de esa capa.

En principio, si reprodcues el escenario, debería funcionarte.

Sin embargo, si sigues teniendo problemas, puedes poner el código por aquí y ya lo revisaremos.

Otra cosa, es que hagas pruebas por tu cuenta con fragmentos de tu código a ver en que punto deja de funcionar y de esa manera ves que pasa.

Suerte

Felicidad
__________________
¡ hey, hou, hou, hey !
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 16:32.