[Ovillo] ALINEADO VERTICAL EN UNA CAPA
Ramón Corominas
listas en ramoncorominas.com
Dom Sep 7 10:28:57 UTC 2008
Hola, Laura, no sé si esto te servirá...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="es" xml:lang="es">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Imagen centrada verticalmente con una tabla variable</title>
<style type="text/css">
body {
margin: 0;
}
#contenedor {
position: relative;
}
#imagen {
display: block;
width: 20px; /* ancho y alto de la imagen */
height: 80px;
position: absolute;
top: 50%; /* centrado vertical */
margin-top: -40px; /* restamos la mitad de la altura de la imagen */
line-height: 80px; /* altura de la imagen */
}
#tabla {
margin-left: 20px; /* width de #imagen */
}
</style>
</head>
<body>
<div id="contenedor">
<div id="imagen"><img src="imagen.jpg" /></div>
<table id="tabla">
<tr><td>Una fila</td></tr>
<tr><td>Otra fila</td></tr>
<tr><td>Otra fila</td></tr><!-- N filas -->
</table>
</div><!--/#contenedor-->
</body>
</html>
Si no, tal vez podrías calcular el CSS también como un parámetro
variable a partir de la propia programación que genera la tabla
(suponiendo que las filas tienen una altura fija y controlada).
De todos modos, lo que dices del rowspan variable no es necesario,
siempre podrías anidar dos tablas (*AVISO:* no estoy recomendando
maquetarlo con tablas, sólo digo que *se podría hacer así*):
<table><!--tabla de maquetación-->
<tr valign="middle">
<td><img ... /></td>
<td>
<table><!--tabla de datos-->
<tr>...</tr>
<tr>...</tr>
</table>
</td>
</tr>
</table>
Un saludo,
Ramón.
Más información sobre la lista de distribución Ovillo