Buenos días compañeros
He estado mirando elproblema de meter texto mas grande de tus 400px, y si, es cierto que en firefox, hace el extraño de que te deja la capa igual, pero el texto ocupa más. (si le pone sun borde a la capa, ves que el texto se sale por debajo)
Esto es devido al tratamiento y estandarización de los Objetos dentro del DOM de Firefox (que es distinto al de IE).
He mirado, que si pones dentro de la capa una tabal donde se contenga tu información, las tablas (más concretamente el TD que contiene la información) se comportan de forma correcta.
te dejo el código para que lo mires, asi no tienes que hacértelo.
Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Medidas de capa</title>
<script language="JavaScript1.2" type="text/javascript">
function dameMedidas()
{
var miCapa = document.getElementById("miCapa");
miContenedor = miCapa.getElementsByTagName("td")[0] // Me quedo con el primer TD que hay dentro de la capa;
alert("Antes de meter texto dinámico -> anchura [" + miContenedor.offsetWidth + "] Altura [" + miContenedor.clientHeight + "]");
miContenedor.innerHTML += "<br><br><br>En la casa de los locos de Sevilla estaba un hombre a quien sus parientes habían puesto allí por falto de juicio. Era graduado en cánones por Osuna [40], pero aunque lo fuera por Salamanca, según opinión de muchos, no dejara de ser loco. Este tal graduado, al cabo de algunos años de recogimiento[*], se dio a entender que estaba cuerdo y en su entero juicio, y con esta imaginación escribió al arzobispo suplicándole encarecidamente y con muy concertadas razones le mandase sacar de aquella miseria en que vivía, pues por la misericordia de Dios había ya cobrado el juicio perdido, pero que sus parientes, por gozar de la parte de su hacienda, le tenían allí, y a pesar de la verdad querían que fuese loco hasta la muerte. El arzobispo, persuadido de muchos billetes concertados y discretos, mandó a un capellán suyo se informase del retor de la casa si era verdad lo que aquel licenciado le escribía, y que asimesmo hablase con el loco, y que si le pareciese que tenía juicio, le sacase y pusiese en libertad. Hízolo así el capellán, y el retor le dijo que aquel hombre aún se estaba loco, que puesto que hablaba muchas veces como persona de grande entendimiento, al cabo disparaba con tantas necedades, que en muchas y en grandes igualaban a sus primeras discreciones, como se podía hacer la esperiencia hablándole. Quiso hacerla el capellán, y, poniéndole con el loco, habló con él una hora y más, y en todo aquel tiempo jamás el loco dijo razón torcida ni disparatada, antes habló tan atentadamente, que el capellán fue forzado a creer que el loco estaba cuerdo. Y entre otras cosas que el loco le dijo fue que el retor le tenía ojeriza, por no perder los regalos que sus parientes le hacían[*] porque dijese que aún estaba loco y con lúcidos intervalos; y que el ";
alert("DESPUES de meter texto dinámico -> anchura [" + miContenedor.offsetWidth + "] Altura [" + miContenedor.clientHeight + "]");
}
</script>
</head>
<body>
<div id="miCapa" style="position:absolute;top:40px;left:200px;width:400px;height:400px;border:1px solid red">
<table cellpadding="0" cellspacing="0" width="400" style="height:400px" border="0">
<tr>
<td><a href="javascript:dameMedidas()">Pulsame</a></td>
</tr>
</table>
</div>
</body>
</html>
Mira a ver si metiendo la información dentro de una tabla (dentro de tu div) te solventa el problema, el cual, es bastante raro...
Voy a mirar si existe algún tipo de atributo para hcer que se "autoestire" una capa dependiendo del contenido que tenga dentro.
Saludos a todos